reactjs - 不可变的 JS 列表大小

标签 reactjs typescript size immutable.js immutablelist

我不知道不可变 JS 列表大小将如何增长。

如官方文档中的示例 https://facebook.github.io/immutable-js/docs/#/List/push ,在不可变的 js 列表中推送某些内容将自动增加大小。

在我的代码中:

const list: List = List();
list.push(object);
console.log(list, list.size);

我在控制台中的输出是:
(1) object
length: 1
___proto___: Array(0)

undefined

这与切面输出确实不同。
没有大小,如果我在我的代码中使用长度 Typescript 告诉我它在 List 中不存在“长度”。
我将 React 与 Typescript 和 Immutable.JS 一起使用

有人知道会发生什么吗?

最佳答案

不变性意味着操作不会改变原始对象,而是创建一个新对象。

在你的情况下 push方法将返回 新品 列出所有旧元素和刚刚添加的新元素。

您的代码应该如下所示。

const list: List = List();
const newList = list.push(object);
console.log(list, list.size);
console.log(newlist, newlist.size);

这应该为 list 打印大小为 0 newList 的变量和大小为 1多变的。

关于reactjs - 不可变的 JS 列表大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52724080/

相关文章:

reactjs - nextjs- typescript- 属性 'className' 在类型 'IntrinsicAttributes 和 IntrinsicClassAttributes 上不存在

javascript - 重定向后的 React-router-redux setState 警告

javascript - 使用 byte[] 发送游戏更新并在 javascript 中转换为数字

javascript - Materialise closeModal 未触发完成

javascript - Angular - 检查多个子组件是否脏

ios - UITableViewAutomaticDimension 以及 heightForRow

java - 我想知道“数据类型的实际大小取决于实现”是什么意思。

javascript - 将 'active' 类添加到映射项目会导致所有项目都具有事件类

javascript - REACT React如何在回调后访问正确的 "this"

c - 二维指针的大小