我遇到了一个名为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的原型属性,其值将为{参数中的{1}}和from
。
在这种情况下,为什么只为返回的对象编写text
和from
?
答案 0 :(得分:5)
这是ECMAScript的“简写”属性和表示法:
http://es6-features.org/#PropertyShorthand
http://es6-features.org/#ObjectMatchingShorthandNotation
顾名思义,这是一种对象定义的简写方法。