Javascript 获取嵌套值的缩写

Javascript 获取嵌套值的缩写,javascript,reactjs,immutable.js,Javascript,Reactjs,Immutable.js,我一直在寻找一种很好的方法,在其中一个属性可能为null或未定义时获取真正的嵌套值 示例对象: var a = { b: { c: { d: 10 } } } 现在让我们假设这是对象完全填充时的结构,但有时b是未定义的,或者c甚至d。在javascript中,我可能会采用如下方式: var d = a && a.b && a.b.c && a.b.c.d // Now d

我一直在寻找一种很好的方法,在其中一个属性可能为null或未定义时获取真正的嵌套值

示例对象:

var a = {
    b: {
        c: {
            d: 10
        }
    }
}
现在让我们假设这是对象完全填充时的结构,但有时b是未定义的,或者c甚至d。在javascript中,我可能会采用如下方式:

 var d = a && a.b && a.b.c && a.b.c.d // Now d has value d or some falsy value
在Immutable.js中,我可以做以下事情,我发现这更干净:

var d = a.getIn(['b', 'c', 'd'], null) 
这允许我检索d的值,甚至在任何操作失败时将最终参数设置为默认值


我可以在js中执行类似的操作。

在检查值和类型后,可以使用对象缩减数组

函数getInobject、键、定义{ 返回键。还原功能o,k{ 返回o&typeof o==='object'&k在o?o[k]:def; },对象; } 变量a={b:{c:{d:10}}; console.loggetIna,['b','c','d'],null;
console.loggetIna,['b','c','d','e'],null 在检查值和类型后,可以使用对象缩减数组

函数getInobject、键、定义{ 返回键。还原功能o,k{ 返回o&typeof o==='object'&k在o?o[k]:def; },对象; } 变量a={b:{c:{d:10}}; console.loggetIna,['b','c','d'],null;
console.loggetIna,['b','c','d','e'],null;因此,制定一种方法来实现这一点。。。。我会用reduce。不,没有内置的速记。这就是Immutable.js背后的人编写该函数的原因。因此,请创建一个实现该函数的方法。。。。我会用reduce。不,没有内置的速记。这就是为什么Immutable.js背后的人编写了这个函数。就像你制作了Underline.js。我想,它不仅仅是这个。然后尝试制作新的js。nina.js就像你制作了Underline.js。我想,不止这些。然后试着制作新的js。nina.js