Symbol 是 JS 中的一種資料型態。它通常用於在 Javascript 中建立唯一鍵和隱藏物件鍵。
全域符號登錄:全域符號登錄是儲存使用Symbol.for建立的符號的空間。
文法
在下面的範例中,「john」是描述符,key_one 和 key_two 是符號。
const key_one = Symbol("john"); //local symbol const key_two = Symbol.for("john"); //global symbol console.log(typeof key_one) // symbol console.log(typeof key_two); //symbol
正如我之前所說,即使本地符號中的描述符相同,每個符號都是唯一的。讓我們驗證一下。
應用程式
const key_one = Symbol("john"); const key_two = Symbol("john"); key_one == key_two // false key_one === key_two //false
const key_one = Symbol.for("foo"); const key_two = Symbol.for("foo"); console.log(key_one === key_two); //true
應用程式
const zero = Symbol("0"); const temp = { 0:"zero", 1:"one", [zero]:"zero", 1.1:"one one", } const keys = Object.keys(temp); //["0","1","1.1"] console.log(temp[1.1]) // one one console.log(Object.getOwnPropertySymbols(temp)) // [Symbol(0)]
使用Symbol.keyFor(symbol)可以獲得全域符號的描述符
const key_one = Symbol.for("john") Symbol.keyFor(key_one) // "john" typeof Symbol.keyFor(key_one) //string
請在 dev.to 和 linkedin 上支持我? 。 TY?
以上是JS 中的符號與物件♥的詳細內容。更多資訊請關注PHP中文網其他相關文章!