Можно сказать, что суть компьютерной программы - это в значительной степени эксплуатационная и чтение и написание различной информации (значений) машиной. В JavaScript существует несколько типов значений, которые разделены на две категории: примитивный (примитивный тип) и объект (объект).
Примитив
В JavaScript есть 5 типов примитива:
1. Все числа, будь то целые числа или десятичные десятичные знаки, имеют число типов.
2. Строение. Тип строки.
3.boolean. Логический тип, верно или неверно.
4.null. Этот тип имеет только одно значение нуля.
5. Этот тип имеет только одно значение неопределенным.
Объект
За исключением примитивного, любое другое значение в JavaScript является объектом (объектом). Есть несколько типов объектов:
1. Джонс-клавиш-Value Pare объект. Такие как {"name": "bob", "Age": 42}.
2. Массив. Такие как [1,4,5,7,9].
3. Функция. Такие как function () {return true;}. В JavaScript есть две формы функций: 1. Executable Code Block; 2. Классный конструктор. Независимо от того, какая форма он существует, функция всегда является объектом.
JS поставляется с глобальными объектами
Чтобы облегчить программирование, JavaScript поставляется с глобальным объектом, который имеет следующие 7 переменных членов, все из которых являются объектом:
1.math. Серия сложных математических операций может быть завершена, вызывая метод математического объекта.
2. Некоторые специальные значения могут быть получены путем доступа к переменным членам чисел объектов.
3. Обора Конструктор объекта массива.
4. Функция. Конструктор объекта функции.
5. Дат. Конструктор объекта даты.
6. REGEXP. Конструктор объекта регулярного выражения.
7.error. Конструктор объекта ошибки.
При написании программ, поскольку вы можете напрямую доступ к вышеуказанным переменным, вы также можете использовать их в качестве глобальных объектов.
Необычный против изменяемого
Примитив и объект имеют четкое различие: все примитивы неизменны, а все объекты изменяются. Принимая тип строки в качестве примера, после вызова метода String для его редактирования JavaScript сохранит отредактированный результат в новом объекте String, и исходный объект String ничего не изменит:
Кода -копия выглядит следующим образом:
var s = "test";
s.touppercase (); // return Новый объект строки "тест"
console.log (s); // "test" - исходная строка s не меняется
эксперимент
В JavaScript вы можете получить тип определенного значения, используя ключевое слово TypeOF.
Получите тип номера:
Кода -копия выглядит следующим образом:
var n = 42;
console.log (typeof n);
Выходным результатом программы является число.
Получите тип строки:
Кода -копия выглядит следующим образом:
var s = "test";
console.log (typeof s);
Выходным результатом программы является строка.
Получите тип логического значения:
Кода -копия выглядит следующим образом:
var b = true;
console.log (typeof b);
Результатом вывода программы является логическое.
Получите тип нуля:
Кода -копия выглядит следующим образом:
var x = null;
console.log (typeof x);
Программа должна вывести NULL, но она фактически выводит объект. Причина в том, что при использовании операции TypeOF на нулевых значениях программа вернет объект: это ошибка, которая существовала со времен первой версии JavaScript. Во время формулировки стандарта ECMASCRIPT были некоторые интересные дебаты о том, следует ли исправить эту ошибку: http://wiki.ecmascript.org/doku.php?id=harmony:typeof_null; Окончательный вывод заключается в том, что исправление этой ошибки приведет к проблемам слишком много веб -сайтов, поэтому она не будет исправлена на данный момент.
Получите неопределенный тип:
Кода -копия выглядит следующим образом:
var y = не определен;
console.log (typeof y);
Выходной результат программы не определен.
Получите тип объекта JSON:
Кода -копия выглядит следующим образом:
var j = {"name": "bob", "age": 42};
console.log (typeof j);
Выходным результатом программы является объект.
Получите тип объекта массива:
Кода -копия выглядит следующим образом:
var a = [2,3,5,7,11];
console.log (typeof a);
Выходным результатом программы является объект.
Получите тип объекта функции:
Кода -копия выглядит следующим образом:
var f = function () {return true;};
console.log (typeof f);
Функциональный объект довольно особенный, а оператор TypeOF возвращает результат в качестве функции.