Javascript 如何在Immutable.js中读取数组中的值
我对此有点困惑,似乎无法解决这个问题 假设我有这个:Javascript 如何在Immutable.js中读取数组中的值,javascript,arrays,object,dictionary,immutable.js,Javascript,Arrays,Object,Dictionary,Immutable.js,我对此有点困惑,似乎无法解决这个问题 假设我有这个: const AnObj = Immutable.Map({ a : "a", b : Immutable.List.of( a, b, c, Immutable.Map({ a : "a" }) ) }); 对于不可变映射,我们使用get()中的字符串来查找相应的属性。如何读取数组值?您可以将基于零的数字索引传递给列表。get(): 请参阅。免责声明-这适用于所有不可变类型,而不仅仅是列表 几种方法- 方法-
const AnObj = Immutable.Map({
a : "a",
b : Immutable.List.of(
a,
b,
c,
Immutable.Map({
a : "a"
})
)
});
对于不可变映射,我们使用
get()
中的字符串来查找相应的属性。如何读取数组值?您可以将基于零的数字索引传递给列表。get()
:
请参阅。免责声明-这适用于所有不可变类型,而不仅仅是列表 几种方法-
AnObj.get('b')。get(3)。get('a')
(谢谢@stas)。
当结构不是很深时,这很有用。如您所见,语法非常冗长AnObj.getIn(['b',3',a'])
我喜欢这一点,因为这种模式允许有一个通用的getter,我可以将关键路径转换到各个组件AnObj.get('b').valueSeq()
当列表很大并且您希望将迭代延迟到绝对需要时,这非常有用。这是其中表现最好的AnObj.get('b').get(3).get('a')