Node.js 功能函数

Node.js 功能函数Node.js 功能函数Node.js 功能函数Node.js 功能函数Node.js 功能函数Node.js 功能函数
最近在项目中经常用到的一些JavaScript fun,记录下来以后组件自己的工具库:

1#

[
    {
        "name":"a",
        "value":[
            {
                "name":"b",
                "value":10
            }
        ]
    }
]
// find env value in array-object
exports.findEnvValue = function (envs, envNameArr) {
  if (!Array.isArray(envs) || !Array.isArray(envNameArr))
    return null
  if (envNameArr.length === 1) {
    let obj = envs.find(item => item['name'] === envNameArr[0])
    if (!obj || typeof obj.value === undefined) return null
    return obj.value
  }
  let env = envs.find(item => item['name'] === envNameArr[0])
  if (!env || typeof env.value === undefined) return null
  return this.findEnvValue(env.value, envNameArr.slice(1))
}

2#

{
    "name":"a",
    "value":{
        "name":"b",
        "value":10
    }
}
exports.getDeepValue = (target, propsList) => propsList.reduce(
  (result, prop) => ((result && result[prop]) ? result[prop] : null), target)

3# 数组扁平

[[1,2,3],["a","b","d"]]
exports.arrayFlatten = function (array) {
  return [].concat(...array.map(item => Array.isArray(item) ? this.arrayFlatten(item) : item))
}

猜你喜欢

转载自blog.csdn.net/zhangmingli_summer/article/details/82291752