Блог Vaden Pro

Все о самостоятельном создании и продвижении сайтов

Типы данных в JavaScript

Раздел: 

В JavaScript выделяют пять «примитивных» типов данных и шестой, который включает в себя объекты. Рассмотрим каждый из них подробнее.

«Примитивные» типы данных

Число (number)

Все числа объединены в один общий тип данных number. Помимо них сюда входят две специальных величины:

  • NaN — итог математических операций, которые невозможно выполнить (ошибка в вычислениях). К примеру:
    alert( "текст" * 2 );
    alert( 0 / 0 );
    Уникальной чертой данного значения является то, что оно не равно ничему, включая само себя.Также стоит отметить, что любые операции с использованием NAN возвращают NaN:
    alert( NaN + 1 );
  • Infinity — получается в результате деления на ноль. Бесконечность.
    alert( 1 / 0 );
    Никакой нелогичности в существовании данной переменной нет, поскольку ноль рассматривается просто как крайне малая величина. С математической точки зрения при формировании бесконечности используются пределы.

Стоит отметить, что никакие ошибки в математических операциях не обрушат скрипт, поскольку в худшем случае будет возвращено значение NaN.

Кроме того javascript поддерживает помимо десятичного, еще и шестнадцатеричную с восьмеричной системы исчисления:

alert( 0xFF ); // шестнадцатеричная 
alert( 010 ); // восьмеричная

Строка (string)

Одной из отличительных черт javascript является то, что все данные содержащие текст относятся к строчному типу данных (отдельного типа данных для символов нет).

При определении значения строчного элемента используются кавычки, при чем использовать одинарные или двойные кавычки значения не имеет — они равноправны:

var text = “Текст в двойных кавычках”;
text = ‘Текст в одинарных кавычках’;

Текстовый тип данных допускает использование специальных символов. Самые популярные среди них:

  • \n - перенос строки.
  • \b - возврат на символ назад.
  • \t -перенос на следующую позицию табуляции

Для примера выведем в одном alert две строки:

alert('Строка 1\nСтрока 2');

Также часто для вывода специальных символов в тексте используется экранирование. Для этого применяется обратный слеш:

var str = "Строка  \"в которой есть кавычки\" ";
alert(str);

Логический тип (boolean)

Содержит в себе только 2 значения: true и false.

Булевые значения возвращаются при использовании в коде условных ( if, ? и тд) и логических операторов ( ||,<, == и тд.).

if ( 1 > 0 ) { // if вернет значение true, поскольку 1 больше 0
  alert('верно');
}

Может присваиваться простым переменным:

var check = false;

null

Значение образующее собой свой собственный тип данных. По своей сути означает просто «ничего».

var check = null;

Сообщает интерпретатору кода о неизвестном значении переменной check.

null в js это не ссылка на объект, которого не существует, а просто специфический тип данных.

undefined

Также как и null образует собой отдельный тип данных, но в отличие от предыдущего типа, означает не то, что значение не известно, а то, что оно не было задано:

var check;
alert(check); // получим undefined

Это значение возможно присвоить переменной и на прямую, но так делать не принято, поскольку при обозначении «пустой переменной» принято использовать null.

Объекты (object)

Этот тип данных стоит особняком от остальных, поскольку включает в себя данные с более сложной структурой — даты, массивы и прочее.

Ключевые черты объектов в js:

  • Представляют из себя ассоциативные массивы (структура данных, хранящая в себе информацию в виде пар ключ-значение).
  • Предоставляют js-разработчикам возможности для объектно-ориентированного программирования.