JavaScript对象属性值中的字符串插值

3

我有以下对象:

var obj = {
   number: "123456789"
   tel: `The clients phone number is ${number}. Please call him!`

如何将数字值插入到电话字符串中?

2
在声明obj变量之前,先声明并赋值给number变量。 - Prerak Sola
那个。属性在对象初始化结束之前是不存在的,因此 number 还不存在作为一个变量。或者,可以等到之后再添加 tel... obj.tel = \客户电话号码是${obj.number}。请给他打电话!`` - Reinstate Monica Cellio
1个回答

8

在初始化对象时无法访问该对象。您可以在对象初始化后分配属性,或者可以定义一个getter属性:

const obj = {
  number: "123456789",
  get tel() {
    return `The clients phone number is ${this.number}. Please call him!`;
  }
};

console.log(obj.tel);


2
@Dalorzo:值得一提的是,https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#Browser_compatibility 表明Edge支持它。 - Felix Kling

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接