JavaScript 符號

一個易於理解 JavaScript 符號的教程 符號是 JavaScript 的原始資料類型之一,同樣還有 字符串、數字、布林值、空值和未定義值。 它在 ECMAScript 2015中被引入,所以只有幾年的歷史。 這是一種非常奇特的資料類型。一旦您創建了一個符號,它的值就會保持為私有且供內部使用。 創建後,只剩下符號參考。 通過調用Symbol()全局工廠函數來創建符號: const mySymbol = Symbol() 每次調用Symbol()我們都會獲得一個新的唯一符號,確保與其他所有符號不同: Symbol() === Symbol() //false 您可以向Symbol()傳遞一個參數,用作符號的描述,僅用於調試目的: console.log(Symbol()) //Symbol() console.log(Symbol('Some Test')) //Symbol(Some Test) 符號通常用於識別對象的屬性。 經常用於避免屬性之間的名稱衝突,因為沒有一個符號等於另一個符號。 或者用於添加不能被用戶有意或無意地覆蓋的屬性。 例如: const NAME = Symbol() const person = { [NAME]: 'Flavio' } person[NAME] //'Flavio' const RUN = Symbol() person[RUN] = () => 'Person is running' console.log(person[RUN]()) //'Person is running' 符號不會被枚舉,這意味著它們不會在運行在對象上的 for..of 或 for..in 循環中被包括。 符號不是 Object.keys() 或 Object.getOwnPropertyNames() 的一部分。...