ES6 symbol

symbol
symbol是ES6新增的數據類型,也就是說symbol是ES6中的第七種數據類型
使用場景

  1. 給對象屬性名賦值,防止被覆蓋;
  2. 模擬class私有變量
console.log(Symbol());//Symbol()
console.log(typeof Symbol());// symbol

注意symbol()每次調用都要產生一個獨一無二的值

if (Symbol() === Symbol()) {
	console.log('不可能相等');
}

let a = Symbol();
let b = Symbol();
console.log(a === b); //-->false

給對象屬性賦值,防止覆蓋

let key = Symbol();
let objG = {};
objG[key] = '你永遠找不到我';
// console.log(obj);
console.log(objG[key]);

symbol描述符
console.log(Symbol('寶寶') === Symbol('寶寶'));//false

symbol.for的用法
forkey如果是一樣的,則symbo.for產生的內容就是一樣的
console.log(Symbol.for('電影') === Symbol.for('電影')); //true

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章