Типы данных. Number
Всем привет! Чувствую, что уже заждались.
Открываю блок статей связанных с типом данных в JS. Каждый тип данных мы будем рассматривать в отдельной статье.
JavaScript использует так называемую динамическую типизацию. Это означает, что, всецело, типы данных в языке есть, но переменные не привязываются к ним.
Кроме тех типов данных, которые есть практически в любом языке программирования (ЯП), JS имеет несколько типов, которыми он решил ни с кем не делиться, но о них чуть позже.
Числовой тип (Number)
В числовой тип входят целочисленные значения и значения с плавающей точкой. Это несколько не стандартно. Обычно, в других ЯП, целочисленные значения и значения с плавающей точкой разделяются на 2 типа: integer и float, соответственно.
Примеры переменных типа number:
let a = 1; let b = 1.5;
Переменные типа number мы можем спокойно складывать, делить, вычитать, умножать и т.д(любые математические действия).
Цихверки и все-такое – это понятно. Но есть еще, так называемые, "специальные числовые значения".
В их список входят: NaN
, Infinity
, -Infinity
.
NaN
NaN - Not-A-Number. По-русски – не число. Немножко логика поломалась, сейчас, да?) Числовое значение, которые не число) Так мог завернуть только наш любимый JS. Но, ты это, привыкай. С JS легко, вообще, не будет. Он будет крутить твой мозг как пропеллер.
Ну, так, NaN, фактически, означает вычислительную ошибку. Например, ты взял и решил умножить строковую переменную на число, ну, или поделить и засунуть результат в переменну. Именно в этот момент и вступает в бой тип NaN
и назначается этой переменной.
Пример возникновения NaN
:
let a = "Igor" * 20; //выведет NaN
Infinity
Помнишь как тебя в школе учили, что на ноль делить нельзя? А может быть, ты даже в универе уже отучился, где тебе уже сказали, что на самом деле это делать можно. Только вот в этом случае получится бесконечность, что в языке JS является значением Infinity
.
Наравне с физической величиной С (скорость света), Infinity
в рассчетах ведет себя примерно так же. Если Infinity
ссумировать с любым числом, то значение будет все равно Infinity
.
Так же, хотелось бы отметить, что при математических действиях не может случится такого момента, что скрипт намертво "упадет" и перестанет выполняться. Самый страшный случай, который может произойти в расчетах – это переменная может превратиться в NaN
, там где рассчитывалось увидеть число. Поэтому, будьте бдительны работая с числами и учитесь их правильно обрабатывать, в особенности, когда эти данные приходят от пользователя.
О преобразованиях типов и разных интересных плюшках – в статьях дальше.
На этом все, в следующей статье будем изучать строковый тип (String
).