你可能也經歷過下面**片段中的這種情況,其中的乙個或多個屬性名來自於某個表示式,因此無法用物件字面量表達。
var prefix = "user_";
var o =
}; o[ prefix + "foo" ] = function(..);
o[ prefix + "bar" ] = function(..);
es6新增語法可以解決這個問題:
var prefix = "user_";
var o = ,
[ prefix + "foo" ]: function(..),
[ prefix + "bar" ]: function(..)
.. };
物件字面定義屬性名位置的 [ .. ] 中可以放置任意合法表示式。
計算屬性名也可以作為簡潔方法或者簡潔生成器的名稱出現:
var o = // 計算出的簡潔方法
*["b" + "ar"]() // 計算出的簡潔生成器
};
ES6新語法上
es6新語法 1.變數 賦值var 可以重複定義 不能限制修改 沒有塊級作用域 let 不能重複定義 變數 塊級作用域 const 不能重複定義 常量 塊級元素解構賦值 左右兩邊必須一樣,右邊得是個東西 必須定義和賦值同步完成 2.函式 普通 function 函式,引數 箭頭函式 引數,引數 如果...
ES6新語法 箭頭函式
箭頭函式 箭頭函式 實質就是乙個函式固定格式的簡寫 簡寫的規則 function 改為 讀為goesto 如果只有乙個形參,可以省略形參小括號 如果有0個或多個形參 就不能省略形參小括號 如果函式體只有一句話,就可以省略函式體大括號 如果函式體只有一句話,並且這一句話是return 返回值 那麼re...
ES6新語法 解構賦值
物件解構賦值 很重要 物件解構賦值 獲取元素中屬性的值,然後賦值給變數 宣告乙個物件 let obj es5中 let name1 obj.name let age1 obj.age let gender1 obj.gender let score1 obj.score console.log na...