December 1, 2019

Типы данных. 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).