在某些语言中,经常使用的字符串被定义为变量/常量,它们被调用而不是文字字符串。这与 JavaScript 一样吗?特别是,我经常使用字符串 'none'
。而不是写字面 'none'
在代码中的任何地方,如果我定义:
var none = 'none';
并使用none
代码中到处都是?或者,是否有一种方法可以保留文字字符串表达式,以便仅对其求值一次?
最佳答案
大多数 Javascript 编译器都会自动保留文字字符串。因此 var a = 'hello'
和 var b = 'hello'
可能已经指向 'hello'
字符串的同一个副本在内存中,您无需进一步优化。
确保为同一字符串值创建不同字符串对象的唯一方法是通过 String 全局对象定义每个字符串对象,即:
var a = new String('hello');
var b = new String('hello');
关于javascript - 将经常使用的字符串定义为变量是否可以提高性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35260816/