JS中的这种表示法是什么,有人可以解释一下吗

时间:2018-08-15 21:24:25

标签: javascript ecmascript-6

我遇到了一个名为generateMessage的函数,该函数需要2个参数并返回和对象。功能如下:

var generateMessage = (from, text)=>{
    return {
        from,
         text,
        createdAt: new Date().getTime()
    }
};

module.exports = {generateMessage};

这不会引发任何错误,并将3个属性附加到返回的对象:“。from”,“。text”和“ .createdAt”,我对“ .from”感到困惑和'.text'属性。

我的问题是,为什么我们不编写from: fromtext:text,这样返回的对象将具有.from和.text的原型属性,其值将为{参数中的{1}}和from

在这种情况下,为什么只为返回的对象编写textfrom

1 个答案:

答案 0 :(得分:5)

这是ECMAScript的“简写”属性和表示法:

http://es6-features.org/#PropertyShorthand

http://es6-features.org/#ObjectMatchingShorthandNotation

顾名思义,这是一种对象定义的简写方法。