Журнал

Тип данных Symbol в JS

2.08.2023

Symbol — это новый тип данных, добавленный в ECMAScript 2015 (ES6). Он представляет уникальные и идентифицируемые значения в JavaScript. Каждый символ уникален, и два символа никогда не будут равны друг другу.

let symbol1 = Symbol();
let symbol2 = Symbol('foo');

console.log(typeof symbol1); // symbol
console.log(typeof symbol2); // symbol

Мы можем создавать символы с помощью глобальной функции Symbol(). Каждый символ может иметь необязательное описание, которое может быть полезно при отладке или чтении кода.

Символы могут быть использованы в качестве идентификаторов для свойств объектов:

let obj = {
  [Symbol('id')]: 42
};

console.log(obj[Symbol('id')]); // undefined
console.log(obj[Object.getOwnPropertySymbols(obj)[0]]); // 42

В примере выше мы создаем символ id и используем его как идентификатор для свойства объекта obj. Обратите внимание, что каждое использование символа создает новый символ, и поэтому обращение к его значению будет возвращать undefined. Чтобы получить доступ к значению свойства объекта, нам нужно использовать метод Object.getOwnPropertySymbols(), чтобы получить все символьные свойства объекта и обратиться к соответствующему свойству.

Похожие статьи:

СТАРТ 23 октября 2023

Привет!
Я бот школы DevHouse.
Хочешь в IT? Я знаю как.
Preloader