javascript属性检测

如何封装一个方法,实现以下功能

let a = element['a']['b']['c']...['n']
let a = element['a']&&element['a']['b']&&element['a']['b']['c']&&...&&element['a']['b']['c']...['n'];
let a = checkObject(element['a']['b']['c']...['n']);
checkObject(){
    // 具体实现
}
阅读 1.8k
2 个回答
function checkObject(obj, paramList){
  if(paramList == null || paramList.length === 0){
    return true
  }
  var prop = paramList.shift()
  return obj[prop] !=null && checkObject(obj[prop], paramList)
}

var _obj = {
  a: {
    b: {
      c: {
        d: true
      }
    }
  }
}

console.log(checkObject(_obj, ['a', 'b', 'c']))
console.log(checkObject(_obj, ['a', 'c', 'b']))

lodash/get 了解一下,_.get(obj, 'a.b.c.d.e.f.g', undefined)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题