对象文字属性值速记
创建JavaScript工厂函数时,有人告诉我返回语法如下:
function FF(constructorArg) {
var _privateName = constructorArg;
var publicMessage = "Hello StackOverflow";
function publicMethodGetName() {
return _privateName;
}
return {
publicMethodGetName: publicMethodGetName,
publicMessage: publicMessage
};
}
不过,我刚刚注意到我可以将返回简化为以下内容:
return { publicMethodGetName, publicMessage };
而且它仍然有效。
使用此更简单的语法是否有任何意想不到的副作用,或者可以使用吗?
解决方案
这是ECMAScript2015(也称为.ES6)。唯一可能的问题是环境支持。环境应支持此功能。
为支持基于ES5的环境,您可以使用ES6转换程序并将代码转换为ES5。
相关文章