【发布时间】:2019-01-22 19:11:17
【问题描述】:
我遇到了这个名为 generateMessage 的函数,它接受 2 个参数并返回和对象。函数如下:
var generateMessage = (from, text)=>{
return {
from,
text,
createdAt: new Date().getTime()
}
};
module.exports = {generateMessage};
这不会抛出任何错误,并将 3 个属性附加到返回的对象:'.from'、'.text' 和 '.createdAt',我对 '.from' 感到困惑和“.text”属性。
我的问题是我们为什么不写from: from、text:text,这样返回的对象将具有.from 和.text 的proto 属性,它们的值将分别为from 和@ 987654325@来自参数。
为什么在这种情况下只为返回的对象编写 from 和 text 有效?
【问题讨论】:
-
您可以写
from:from和text: text- 这是一种风格选择。它是语法糖,很像胖箭头函数 (=>) -
这是一个简写符号,如果你的变量命名为 from 并且属性命名为 form 你可以写
from而不是from: from它将具有相同的效果