不可变数据结构有哪些常见用途?

时间:2015-05-25 06:16:14

标签: javascript frontend immutability immutable.js

是什么促使不可变数据结构的使用越来越多,例如ImmutableJS和SeamlessJS中提供的那些?

我知道有调试和内存的好处。 我对JavaScript堆栈的使用感兴趣,但我也想到了更容易使用或推理的常见前端任务。

1 个答案:

答案 0 :(得分:4)

至少有三个好处:

  • 无论是前端还是后端工作,它都可以simplify your logic and work process significantly。如果应用程序有错误,那么您可以排除的任何内容,包括无意中修改某些逻辑上不可变的数据结构,都可以提供帮助。

  • 当您克隆包含它们的对象时,它可以improve runtime performance

  • 我怀疑这些特定的库实际上是否使用它,但不可变的数据结构有时可以有更好的实现。哈希表可以使用perfect hashing,平衡树可以用排序数组替换。