【发布时间】:2016-10-09 21:49:25
【问题描述】:
我对 javascript 不是很有经验,并且有一个与函数参数周围使用的花括号有关的问题,因为它不是 JSON 结构。
我在学习核js,找了一些代码作为例子,但我不是很理解——为什么“产品”是大括号?:
addToCart(product) {
reactor.dispatch(ADD_TO_CART, { product })
}
谢谢
【问题讨论】:
我对 javascript 不是很有经验,并且有一个与函数参数周围使用的花括号有关的问题,因为它不是 JSON 结构。
我在学习核js,找了一些代码作为例子,但我不是很理解——为什么“产品”是大括号?:
addToCart(product) {
reactor.dispatch(ADD_TO_CART, { product })
}
谢谢
【问题讨论】:
这是 ES2015(也称为 ES6)创建对象的简写。
{ product } 等价于{ product: product }。
基本上,您最终会得到一个具有名为"product" 的属性的对象,该属性具有product 变量的值。
const prop = "prop value";
const obj = { prop, anotherProp: "something else" }
console.log("obj: ", obj);
如果您需要更详细的说明,请查看 at the MDN documentation 和 here。
这是一种相对较新的语法,因此旧浏览器(例如 IE)可能会引发语法错误,但它开始在现代浏览器中得到很好的支持。在这里查看the ES2015 compatibility table。
【讨论】:
【讨论】: