链接同一对象中的两个字符串

Env*_*nve -1 javascript json object

   var object={
      firstString: 'You must register in order...',
      secondString:'You must re-enter your password in order to...',
      thirdString:'You must re-enter your password in order to...'
    };
Run Code Online (Sandbox Code Playgroud)

如您所见,第二和第三个字符串是相同的.因为这在我现在使用的对象中多次发生,我想将第三个对象与第二个对象链接以节省一些字节

我尝试了以下但是它们不起作用

var object={
  firstString:'You must register in order...',
  secondString:'You must re-enter your password in order to...',
  thirdString:this.secondString
};

var object={
      firstString:'You must register in order...',
      secondString:'You must re-enter your password in order to...',
      thirdString:object.secondString
};
Run Code Online (Sandbox Code Playgroud)

谢谢

Poi*_*nty 7

您无法在对象文字中构造自引用表达式.您必须使用另一个语句跟进声明初始化.

var object={
  firstString='You must register in order...',
  secondString:'You must re-enter your password in order to...',
};
object.thirdString = object.secondString;
Run Code Online (Sandbox Code Playgroud)

如果您真的想在单个表达式中初始化变量,可以使用以下函数:

var object = function() {
  var o = {
    firstString='You must register in order...',
    secondString:'You must re-enter your password in order to...',
  };
  o.thirdString = o.secondString;
  return o;
}();
Run Code Online (Sandbox Code Playgroud)

请注意,现代JavaScript VM内核在某些情况下会注意到重复的字符串常量,并优化掉冗余并非不可能.我不知道他们是否这样做.