Типи даних JavaScript: основні поняття, перевірка, перетворення

Незмінні символи

Символи – це новий примітивний тип JS. Вони створюються з допомогою функції:

const mySymbol = Symbol(‘mySymbol’).

Кожен раз, коли програміст викликає цю функцію, створюється новий і унікальний символ. Вони можуть бути використані, як константи, для подання таких понять, як кольору. Символи в основному використовуються в якості ключів властивостей і ніколи не конфліктують з будь-яким іншим ключем – символом або рядком. Наприклад, можна зробити об’єкт ітеративним, використовуваним через «for-of» цикл та інші мовні механізми, використовуючи символ, який зберігається в «Symbol.iterator» в якості ключа.

У рядку A символ використовується в якості ключа методу. Цей унікальний маркер робить об’єкт повторюваним і дозволяє використовувати «for-of» цикл. Неможливо привести символи рядків, тому що існує примус або неявне перетворення типів даних JavaScript. Заборона примусу запобігає деякі помилки, але також ускладнює роботу з символами.

Новий тип примітиву – це токени, які є унікальними ідентифікаторами. Програміст створює символи з допомогою фабричної функції «Symbol()», яка слабо схожа на «String» – повернення рядків, коли викликається функцією:

const symbol1 = Symbol();

Symbol() має необов’язковий рядковий параметр, який дозволяє дати новоствореному символу опис. Цей опис використовується, коли символ перетворюється в рядок через «toString()» або «String()».