[`expression`]表示法是什么意思?

时间:2019-05-19 13:13:48

标签: javascript reactjs

我最近开始学习,偶然发现了这段代码:

handleChange = event => {
  const { name, value } = event.target

  this.setState({
    [name]: value,
  })
}

我有些困惑,尤其是与以下符号:

[name]: value,

[ ]的用途是什么?

我了解到,const = { name, value } = event.target用于将对象销毁为属性,但是[name]表示法似乎很奇怪,我以前在任何中都没有看到对它的引用。编码。

尽管尽我最大的努力来搜索[] javascript usage及类似的内容,但我找不到类似的东西。

我最好的猜测是与object["property"]表达式的相似性,但是与之相比,这似乎仍然有些奇怪。

1 个答案:

答案 0 :(得分:7)

这些被称为computed property names,这种表示法基本上是用于将变量用作对象键。