На этой странице описывается тип данных «символ» и функция «Symbol()», которая (среди прочего) создает экземпляры типа «символ».

Symbol​ (Символ) — примитивный тип данных, экземпляры которого уникальны и неизменяемы. В некоторых языках программирования символы также называются атомами.

В среде выполнения JavaScript значение «символа» создается путем вызова функции Symbol (), которая динамически создает анонимное и уникальное значение. Единственное разумное использование — сохранить символ, а затем использовать сохраненное значение для создания свойства объекта. Следующий пример хранит символ в «var».

var  myPrivateMethod  = Symbol();
this[myPrivateMethod] = function() {...};

Когда символ используется как идентификатор в присваивании свойства, свойство (например, символ) является анонимным; а также не исчислимым. Поскольку свойство не исчислимо, оно не будет отображаться в цикле «for (... in ...)», и поскольку свойство является анонимным, оно не будет отображаться в массиве результатов "Object.getOwnPropertyNames ()". Доступ к этому свойству можно получить с помощью исходного значения символа, создавшего его, или путем итерирования в массиве результатов «Object.getOwnPropertySymbols ()». В предыдущем примере кода доступ к свойству будет осуществляться через значение, которое было сохранено в переменной myPrivateMethod.

Узнать больше

Общие сведения

Метки документа и участники

 Внесли вклад в эту страницу: 4opper, yanakey, GRIDARK, animhotep, neutral
 Обновлялась последний раз: 4opper,