При создании переменных в JavaScript нужно понимать, какой вид данных мы записываем. Требуется это для того, чтобы исключить какие либо ошибки с переменными и быстро разобраться, в чем же дело.
В JavaScript представлен один логический тип данных - bool
. Может имееть только два варианта значения - false
или true
.
Number
- числовой тип данных (к ним относятся целые и вещественные числа). Значения варьируются от Number.MIN_SAFE_INTEGER
(-(253 - 1) или -9007199254740991) до Number.MAX_SAFE_INTEGER
(253 - 1 или 9007199254740991). Если интересно, почему это так: Number.MIN_SAFE_INTEGER и Number.MAX_SAFE_INTEGER.let a = 19; // Целое число let b = 67.4; // Вещественное (дробное) число let c = Number("19"); // Аналог a, только через функцию
'специальные числовые значения
':Infinity
, -Infinity
- математическая бесконечность, появляется при делении на 0 и при явном указании.NaN
(сокр. Not a Number
) - ошибка при вычислении (как пример, деление строки на число), причем если в части математического вычисления появилось NaN
, то и все выражение равняется NaN
.console.log(10 / 0); // Выведет Infinity console.log("" / 2); // Выводом будет NaN, так как делить строки мы не можем
BigInt
- целочисленный тип данных произвольной длины. Чтобы задать значение числа с данным типом, следует добавить n
в конец числа. Так же можно вызвать функцию BigInt
и в качестве аргумента передать число или строку для преобразования в этот тип данных.let big_a = 123456789123456789123456789n; let big_b = BigInt("123456789123456789123456789"); // Аналог big_a, только через функцию
string
- строковый (логично) тип данных. Любая строка должна быть заключена между одним из трех выдов кавычек: одинарные '
, двойные «
и обратные `
.'
и »
, просто указывают на строку.${…}
, то внутри фигурных скобок можно писать выражения или вызывать переменные, после чего значения выражений/строк будет введено в строку.let user = "Vladimir"; et str_a = "Hello world!"; let str_b = 'Hello Alexeyi!'; let str_c = `Hello ${user}!`; // ${user} заменится на данные в переменной user console.log(str_a); // Выведет "Hello world!" console.log(str_b); // Выведет "Hello Alexey" console.log(str_c); // Выведет "Hello Vladimir"
null
- тип, который обозначает в прямом смысле ничего:// Пример использования function test() { null; }
undefined
- неопределенный тип, обозначает, что ничего не было присвоенно:function test(a) { console.log(a); } test(); // Так как не был задан аргумент, вывод функции будет undefined
array
- массив с данными. Внутри себя может иметь все перечисленные типы данных в неограниченном количестве. Получить значение можно по индексу. Нумерация начинается с 0
, отрицательные значения индекса выводят значения с конца массива.let arr = [1, 2.3, "4.56", true]; console.log(arr[0]); // Выведет 1 console.log(arr[2]); // Выведет "4.56" console.log(arr[-1]); // Выведет true, первое значение с конца
object
- сложный тип данных. Внутри себя может содержать все перечисленные выше типы данных в неограниченном количестве. Получить значение можно по ключу (обычно по строке с названием). let a = 1234567890123456789012345678901n; let obj = { "username": "Alexey", // Можно присваивать строки "age": 44, // А можно и числа "male": true, // Даже логические значения "id": a // И даже переменные } // Получение значений из объекта console.log(obg["username"]); // Вариант 1, выведет "Alexey" console.log(obj.age); // Вариант 2, выведет 44