天天看點

ES6 從入門到精通 # 09:Symbol 類型

說明

ES6 從入門到精通系列(全23講)學習筆記。

Symbol 類型

原始資料類型:Symbol,它表示是獨一無二的值。

最大的用途:用來定義對象的私有變量。

const kaimo = Symbol("kaimo");
const kaimo2 = Symbol("kaimo");
console.log(kaimo === kaimo2);      
ES6 從入門到精通 # 09:Symbol 類型

如果用 Symbol 定義的對象中的變量,取值時一定要用 ​

​[變量名]​

​。

let s = Symbol('s');
console.log(s);
let obj = {
  [s]: "kaimo"
}
console.log(obj[s]);      
ES6 從入門到精通 # 09:Symbol 類型

注意:用 Symbol 定義的對象中的變量無法被 ​

​for in​

​ 周遊出來

let s = Symbol('s');
let obj = {
  [s]: "kaimo",
  ss: "kaimo2"
}
for(let key in obj) {
  console.log(key)
}      
ES6 從入門到精通 # 09:Symbol 類型
let s = Symbol('s');
let obj = {
  [s]: "kaimo",
  ss: "kaimo2"
}
console.log(Object.keys(obj))
console.log("--------------")
console.log(Object.getOwnPropertySymbols(obj))
console.log("--------------")
console.log(Reflect.ownKeys(obj))      

繼續閱讀