說明
ES6 從入門到精通系列(全23講)學習筆記。
Symbol 類型
原始資料類型:Symbol,它表示是獨一無二的值。
最大的用途:用來定義對象的私有變量。
const kaimo = Symbol("kaimo");
const kaimo2 = Symbol("kaimo");
console.log(kaimo === kaimo2);

如果用 Symbol 定義的對象中的變量,取值時一定要用
[變量名]
。
let s = Symbol('s');
console.log(s);
let obj = {
[s]: "kaimo"
}
console.log(obj[s]);
注意:用 Symbol 定義的對象中的變量無法被
for in
周遊出來
let s = Symbol('s');
let obj = {
[s]: "kaimo",
ss: "kaimo2"
}
for(let key in obj) {
console.log(key)
}
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))