在某些语言中,经常使用的字符串被定义为变量/常量,而不是文字字符串。这跟JavaScript一样吗?特别是,我经常使用字符串'none'
。如果我定义:
'none'
var none = 'none';
并在代码中的任何地方使用none
?或者,有没有办法实现一个文字字符串表达式,以便只评估一次?
答案 0 :(得分:1)
大多数Javascript编译器自动实现文字字符串。因此,var a = 'hello'
和var b = 'hello'
可能已经指向内存中'hello'
字符串的相同副本,无需您进行进一步优化。
确保为同一字符串值创建不同字符串对象的唯一方法是通过 String 全局对象定义每个字符串对象,即:
var a = new String('hello');
var b = new String('hello');