Какие типы данных существуют в JavaScript?

«Какие типы данных существуют в JavaScript?» — вопрос из категории JavaScript, который задают на 26% собеседований Node.js Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В JavaScript 8 встроенных типов данных, разделенных на две категории:

Примитивные типы (передаются по значению):

  1. number: целые и числа с плавающей запятой, включая Infinity, -Infinity и NaN.
  2. bigint: для целых чисел произвольной длины (например, 9007199254740991n).
  3. string: последовательность символов, представляющая текст.
  4. boolean: логическое значение true или false.
  5. undefined: значение, присвоенное неинициализированной переменной.
  6. null: специальное значение, обозначающее "ничего", "пусто" или "значение неизвестно".
  7. symbol: уникальное и неизменяемое значение, часто используемое в качестве ключа объекта.

Объектный тип (передается по ссылке):

  1. object: коллекция свойств. К этому типу также относятся массивы (Array), функции (Function), даты (Date) и другие структурные типы.

Проверка типа:

console.log(typeof 42); // "number"
console.log(typeof 'Hello'); // "string"
console.log(typeof true); // "boolean"
console.log(typeof undefined); // "undefined"
console.log(typeof null); // "object" (известная историческая особенность языка)
console.log(typeof {}); // "object"
console.log(typeof []); // "object"
console.log(typeof Symbol('id')); // "symbol"
console.log(typeof 10n); // "bigint"
console.log(typeof function() {}); // "function" (но технически это объект)

В Node.js, особенно при работе с API или базами данных, важно явно контролировать типы, используя строгое сравнение (===) и преобразования (например, Number(), String()).

Видео-ответы