Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
js_exams.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
358.9 Кб
Скачать
  1. Типы данных в es2015. Какие есть типы, какие из них примитивные, в чём разница и каковы особенности? Для каких есть литералы? Оператор typeof.

В JavaScript есть 6 «примитивных» типов: number, string, boolean, symbol, null, undefined и 7-й тип – объекты object.

Число «number»

Тип number используется как для целых, так и для дробных чисел. Существуют специальные числовые значения Infinity (бесконечность) и NaN (ошибка вычислений). Эти значения формально принадлежат типу «число», хотя, конечно, числами в их обычном понимании не являются.

Строка «string»

В JavaScript одинарные и двойные кавычки равноправны. Можно использовать или те или другие. Тип char (символ) не существует, есть только string.

Булевый (логический) тип «boolean»

У него всего два значения: true (истина) и false (ложь). Как правило, такой тип используется для хранения значения типа да/нет.

Ложные значения: false, null, undefined, '', 0, NaN.

Все остальные — истина.

Тип данных «symbol»

Symbol служит для создания уникальных идентификаторов.

Специальное значение «null»

Значение null не относится ни к одному из типов выше, а образует свой отдельный тип, состоящий из единственного значения null. В JavaScript null не является «ссылкой на несуществующий объект» или «нулевым указателем», как в некоторых других языках. Это просто специальное значение, которое имеет смысл «ничего» или «значение неизвестно».

Специальное значение «undefined»

Значение undefined, как и null, образует свой собственный тип, состоящий из одного этого значения. Оно имеет смысл «значение не присвоено». Если переменная объявлена, но в неё ничего не записано, то её значение как раз и есть undefined.

Объекты «object»

Первые 6 типов называют «примитивными». Отдельно стоит седьмой тип: «объекты». Он используется для коллекций данных и для объявления более сложных сущностей.

Объявляются объекты при помощи фигурных скобок.

Оператор «typeof»

Оператор typeof возвращает тип аргумента. Результатом typeof является строка, содержащая тип:

typeof undefined; //"undefined"

typeof 0; //"number"

typeof true; //"boolean"

typeof "off"; //"string"

typeof {}; //"object"

let sym = Symbol();

typeof sym; //symbol

typeof null; //"object"

typeof function() {} //"function"

В последних двух строках typeof ведет себя по-особому:

  • Результат typeof null == "object" – это официально признанная ошибка в языке, которая сохраняется для совместимости. На самом деле null – это не объект, а отдельный тип данных.

  • Функции не являются отдельным базовым типом в JavaScript, а подвидом объектов. Но typeof выделяет функции отдельно, возвращая для них "function". На практике это весьма удобно, так как позволяет легко определить функцию.

Литералы:

Численный — 123

Строковый — '', "", ``

Объекта — {}

Массива — []

Функции — function() {}, () => {}

Регулярного выражения — /^.*$/gim

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]