описание проблемы
Проекту необходимо получить глубокие атрибуты вложенного объекта, и иногда объект имеет эти атрибуты, иногда нет, и сообщение об ошибке Undefine не выдается, что очень неприятно.
Как показано ниже, объект.
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(对象, 属性路径, 默认值);
Если есть, будет возвращено значение; если нет, будет возвращено значение по умолчанию.
Официальный сайт:
https://lodash.com/
https://lodash.com/docs/4.17.15#get