我是 React+Redux+Immutable js 的新手,我正在使用 toJS() 将我的不可变数据结构转换为原生 JavaScript 形式。但最近我偶然发现了这条推文
推文说 .toJS() 非常昂贵,所以我可以使用 toJSON() https://facebook.github.io/immutable-js/docs/#/List/toJSON性能问题可以吗
更新
const initialState = fromJS({
postArr:[]
});
const mapStateToProps = (state) => {
return{
posts:state.allPosts.toJS()
}
};
请提供一些我自己的Reducer的例子
如何在不使用 to.js() 的情况下迭代 this.props.posts
最佳答案
据我了解the documentation :
toJSON()
返回不可变对象(immutable对象)的浅复制版本(不是 JSON 字符串,尽管名称可能另有暗示),它应该只是用于传递给JSON.stringify()
(换句话说:您不应该将其用作代码中的常规对象)。toJS()
返回不可变对象(immutable对象)的深度复制版本,您随后可以在代码中使用/修改它。因为它是深度复制的版本,所以生成成本更高。
关于javascript - 不可变 js 中 .toJS() 与 .toJSON() 哪个最好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44831309/