Shorthand Properties Normal: let x = 1 , y = 2 ; let o = { x : x, y : y }; ทางลัดใน ES6 let x = 1 , y = 2 ; let o = { x, y }; o.x + o.y // => 3 ชื่อ Property ที่มาจากการคำนวณ ปกติ const PROPERTY_NAME = "p1" ; function computePropertyName() { return "p" + 2 ; } let o = {}; o[PROPERTY_NAME] = 1 ; o[computePropertyName()] = 2 ; ES6 ในเครื่องหมาย [] จะเป็น JavaScript Expression อะไรก็ได้ const PROPERTY_NAME = "p1" ; function computePropertyName() { return "p" + 2 ; } let p = { [PROPERTY_NAME]: 1 , [computePropertyName()]: 2 }; p . p1 + p . p2 // => 3 ชื่อ Property ที่เป็น Symbol const extension = Symbol( "my extension symbol" ); let o = { [extension] : { /* extension data stored in this object */ } }; o[extension].x = 0 ; // This won't conflict with other properties of o Spread Operator ES2018 ขึ้นไป จะแตกเฉพาะ own property เท่านั้น หลีกเลี่ยงการใช้ในลูปเพราะ...
Comments
Post a Comment