【前端】取对象的深层属性 / 长对象内部属性获取

224 阅读1分钟

问题描述

项目需要取一个嵌套对象的深层属性,而且有时这个对象有这些属性,有时没有这些属性,没有会报Undefine的错误,很麻烦。

如下图object。

var object = { 'a': { 'b': { 'c': 3 } }};

解决方案:

翻了好久,找到一个库,亲测有效。 直接看代码。

// 安装
// $ npm i -g npm
// $ npm i --save lodash

var _ = require('lodash');

var object = { 'a': { 'b': { 'c': 3 } }};

// 存在值
var existValue = _.get(object, 'a.b.c', 'default');
console.log('existValue:' + existValue)
// => 3

// 不存在值
var inexistValue = _.get(object, 'a.e', 'default');
console.log('inexistValue:' + inexistValue)
// => 'default'

$ npm i -g npm

$ npm i --save lodash 安装后即可使用。

_.get(对象, 属性路径, 默认值);

如果有会传回值,如果没有会传回默认值。

官网:

lodash.com/

lodash.com/docs/4.17.1…