[英]Object Literal Property Value Shorthand
創建JavaScript工廠函數時,我被告知返回語法如下所示:
function FF(constructorArg) {
var _privateName = constructorArg;
var publicMessage = "Hello StackOverflow";
function publicMethodGetName() {
return _privateName;
}
return {
publicMethodGetName: publicMethodGetName,
publicMessage: publicMessage
};
}
但是,我剛剛注意到,我可以簡化對以下內容的返回:
return { publicMethodGetName, publicMessage };
而且仍然有效。
使用這種簡單語法會有任何意想不到的副作用嗎?還是可以使用?
這是定義對象文字屬性的簡寫語法,由ECMAScript2015(aka ES6)引入。 唯一可能的問題是環境支持。 環境應支持此功能。
為了支持基於ES5的環境,您可以使用ES6編譯器並將代碼轉換為ES5。
這是新的es6語法。 除非您編譯到es5,否則只有某些瀏覽器會支持它。 請參閱兼容性表: https : //developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Object_initializer
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.