据我了解,在scala.js中,/bin/rm ~/.bash_profile
相当于. ~/.bash_profile
。如果我将其转换为~/.bashrc
和js.Array
等不可变集合,是否会在浏览器中显着影响性能?
在scala.js中使用不可变项的经验法则/最佳实践是什么?
答案 0 :(得分:1)
它与JVM上的情况并没有太大不同,真的。通常的经验法则是,不可变是好的 - 它往往会产生更清晰,更易于推理和更易维护的代码。
对于内部循环(特别是对于在不可变结构中使用某些数据和结果的“构建器”函数),有时候值得使用可变数据类型来提高性能,有时候你没有选择当你与JS方面的事情进行交互时很重要。但我要说最好的做法是默认为不可变,除非你有理由相信函数或类型对性能至关重要......