存储状态中的每个对象都应该是不可变的吗?

时间:2015-06-17 22:07:28

标签: javascript reactjs immutability flux immutable.js

我正在学习React.js和Flux,我知道最好保持对象不可变,因为比较它们是O(1)。

我的情况是这样的:我有一个商店,它有一个_state对象,这是一张地图(我使用的是Immutable-js)。 _state有一些布尔值,一些字符串和一个数组。 数组有对象,所有对象都是不可变的映射。

问题是,我应该使用不可变列表而不是数组吗?有什么好处?我不打算将数组与另一个数组进行比较。

感谢阅读!

1 个答案:

答案 0 :(得分:0)

这取决于对象的设计。如果要向列表中添加元素并处理返回的新不可变集合,则需要不可变列表。否则,请使用重量较轻的阵列。

所以更重要的是:你需要不可变列表吗?如果没有,请使用阵列以减轻重量。