【问题标题】:Why can’t back ticks be used in JavaScript objects [duplicate]为什么不能在 JavaScript 对象中使用反引号 [重复]
【发布时间】:2021-11-29 21:14:22
【问题描述】:

为什么对象属性的反引号语法无效?例如,这是有效的:

const test = {
  "test1": "test2"
}

那么为什么它不能有反引号呢?

const test = {
  `test1`: "test2"
}
//throws unexpected token error

如果可以像这样使用反引号,那将非常有帮助,但我们不能。有没有简单的替代方案,或者这在某些浏览器中有效?

【问题讨论】:

    标签: javascript


    【解决方案1】:

    您需要将它放在这样的括号中,因为它是在运行时评估的。

    const test = {
      [`test1`]: "test2"
    }
    

    正如@Amadan 在评论中指出的那样,您可以将任何表达式用作属性键,只需将其放入括号中即可。

    【解决方案2】:

    你可以这样写:

    const key = `test1`
    const test = { [key]: 'test2' }
    

    【讨论】:

      猜你喜欢
      • 2016-04-15
      • 1970-01-01
      • 2012-10-13
      • 1970-01-01
      • 2012-09-22
      • 2020-08-28
      • 2022-11-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多