В JavaScript вы можете присвоить любой тип значения любой переменной. Это не проблема, если у переменной был тип значения строки, и теперь вы хотите сохранить в ней число. Существует 8 типов значений, разделенных на две группы: примитивы и ссылки. Тип объекта является ссылкой, а остальные – примитивы.
Оператор типа
console.log(typeof "hello"); // string
console.log(typeof 5); // number
console.log(typeof null); // object
console.log(typeof undefined); // undefined
console.log(typeof true); // boolean
console.log(typeof Symbol("hey")); // symbol
console.log(typeof {}); // object
console.log(typeof 1n); // bigint
Вы можете использовать тип оператор, чтобы увидеть тип каждого значения.
Нить
const firstName = "Joe";
const lastName = 'Doe';
let age = `is 45 years old.`;
age = `${firstName} ${lastName} is 45 years old.`;
console.log(age); // Joe Doe is 45 years old.
Строка представляет собой текст, заключенный в двойные цитаты, отдельные кавычки или обратные вызовы. Строки, заключенные в бэки, называются шаблонами литералов. Они имеют дополнительную функциональность, потому что мы можем выразить выражение между $ {}.
Количество
const age = 45; console.log(age + 5); // 50
Тип числа предназначен как для целых чисел, так и для поплавков. Но здесь есть 3 специальных числа: бесконечность, -инфинтность и НАН.
console.log(Math.pow(2, 1024)); // Infinity
console.log(-Math.pow(2, 1024)); // -Infinity
console.log("hello" / 5; // NaN
Бесконечность больше любого другого числа, а -интичность меньше любого другого числа.
NAN не соответствует номеру, но если мы проверим его тип с оператором TypeOF, мы получим номер. Это результат неправильного расчета, например, если мы попытаемся разделить строку с номером, мы получим NAN.
Bigint
const bigNum = 1n;
const bigNum2 = BigInt("9007199254740991");
Тип BigInt представляет цифры больше 2⁵³ – 1. Вы можете создать Bigint, добавив n к концу числа или используя объект Bigint.
Нулевой
let number = null;
Нулевый тип не означает никакого значения. Одна вещь, которая стоит отметить, заключается в том, что, если мы проверим его тип с оператором TypeOF, он вернет объект. Это ошибка в JavaScript, и теперь уже слишком поздно, чтобы быть исправленным.
Неопределенный
let variable; console.log(variable); // undefined
Когда переменная не была объявлена с значением, она имеет тип неопределенного.
Логический
const bool = true; const bool2 = false; console.log(8 < 4); // false console.log(4 > 2); // true
Булеи могут быть истинными или ложными. Они используются в условных условиях с такими операторами, как ==, ===,>, <и, больше.
Условное обозначение
const sym = Symbol("hey");
console.log(sym); // Symbol(hey)
Тип символа используется в качестве уникального идентификатора. Он имеет свои собственные свойства, и каждое значение символа уникально. Мы создаем символ, используя объект символа.
Объект
const object = {
name: "Joe Doe",
age: 45,
}
Тип объекта отличается от любого другого типа, потому что он имеет свои собственные свойства и методы. Это также изменчиво, а другие – нет.
Оригинал: “https://dev.to/antonniotr/a-quick-overview-of-javascript-data-types-578”