В JavaScript выделяют пять «примитивных» типов данных и шестой, который включает в себя объекты. Рассмотрим каждый из них подробнее.
«Примитивные» типы данных
Число (number)
Все числа объединены в один общий тип данных number. Помимо них сюда входят две специальных величины:
- NaN — итог математических операций, которые невозможно выполнить (ошибка в вычислениях). К примеру:
alert( "текст" * 2 ); alert( 0 / 0 );
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-разработчикам возможности для объектно-ориентированного программирования.