我应该在Scala.js中使用不可变集合吗?

时间:2016-10-01 00:04:59

标签: scala-collections scala.js

据我了解,在scala.js中,/bin/rm ~/.bash_profile相当于. ~/.bash_profile。如果我将其转换为~/.bashrcjs.Array等不可变集合,是否会在浏览器中显着影响性能?

在scala.js中使用不可变项的经验法则/最佳实践是什么?

1 个答案:

答案 0 :(得分:1)

它与JVM上的情况并没有太大不同,真的。通常的经验法则是,不可变是好的 - 它往往会产生更清晰,更易于推理和更易维护的代码。

对于内部循环(特别是对于在不可变结构中使用某些数据和结果的“构建器”函数),有时候值得使用可变数据类型来提高性能,有时候你没有选择当你与JS方面的事情进行交互时很重要。但我要说最好的做法是默认为不可变,除非你有理由相信函数或类型对性能至关重要......