Symbol.keyFor()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since ÑенÑÑбÑÑ 2015 г..
ÐеÑод Symbol.keyFor(sym) полÑÑÐ°ÐµÑ ÐºÐ»ÑÑ Ð´Ð»Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ Ñимвола из глобалÑного ÑееÑÑÑа Ñимволов.
ÐнÑеÑакÑивнÑй пÑимеÑ
const globalSym = Symbol.for("foo"); // Global symbol
console.log(Symbol.keyFor(globalSym));
// Expected output: "foo"
const localSym = Symbol(); // Local symbol
console.log(Symbol.keyFor(localSym));
// Expected output: undefined
console.log(Symbol.keyFor(Symbol.iterator));
// Expected output: undefined
СинÑакÑиÑ
Symbol.keyFor(sym);
ÐаÑамеÑÑÑ
- sym
-
Символ, обÑзаÑелÑнÑй. Символ, клÑÑ ÐºÐ¾ÑоÑого ÑÑебÑеÑÑÑ Ð½Ð°Ð¹Ñи
ÐозвÑаÑаемое знаÑение
СÑÑока Ñ ÐºÐ»ÑÑом заданного Ñимвола, еÑли он еÑÑÑ Ð² глобалÑном ÑееÑÑÑе Ñимволов, либо undefined, еÑли его Ñам неÑ.
ÐÑимеÑÑ
js
var globalSym = Symbol.for("foo"); // СоздаÑÑ Ð½Ð¾Ð²Ñй глобалÑнÑй Ñимвол
Symbol.keyFor(globalSym); // "foo"
var localSym = Symbol();
Symbol.keyFor(localSym); // undefined
// ÐзвеÑÑнÑе ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ Ð½Ðµ ÑвлÑеÑÑÑ Ñимволами,
// коÑоÑÑе наÑ
одÑÑÑÑ Ð² глобалÑном ÑееÑÑÑе Ñимволов
Symbol.keyFor(Symbol.iterator); // undefined
СпеÑиÑикаÑии
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-symbol.keyfor> |