Такие основные вещи больше не должны записаться, но, просматривая прошлое и сначала изучая новые. Давайте начнем с типа данных.
JS Шесть основных типов данных: число, строка, объект, логический, нулевой, неопределенный
Строка: объясняется одиночными или двойными кавычками, такими как «строка»
Номер: какие целые числа, номера с плавающими точками называются номерами, вы знаете ~
Логический: это правда и ложь
Неопределенный: неопределенное, то есть вы создаете переменную, но не приписываете ему значение ~
NULL: Следовательно, это называется сидзиу. нулевой ничего не значит, ничего не значит ничего
Объект: Мне трудно это объяснить. Это тип, кроме вышеупомянутых пяти
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
Тип типа данных
TypeOF может решить большинство суждений типа данных. Это одноральная операция. Перед оперативным значением его возвращаемое значение является строкой. Эта строка указывает тип операционного номера. Следовательно, if (typeof (ваше значение) == "string") {}
Вот результаты, возвращаемые различными типами данных:
var a = "string"; console.log (a); // stringvar a = 1; console.log (a); // numbervar a = false; console.log (a); // booleanvar a; console.log (typeof a); // undfinedvar a = null; console.log (typeof a); // ObjectVar a = документ; console.log (typeof a); // ObjectVar a = []; console.log (a); // ObjectVar a = function () {}; Console.log (typeof a) // Функция В дополнение к оценке типов данных, вы также можете судить типы функцийЭто очевидно. За исключением первых четырех типов, нулевой, объекта и массива возвращают все типы объектов;
Для типов функций возвращается функция, такая как Typeof (date), typeof (eval) и т. Д.
Затем здесь мы можем расширить другую проблему, которая очень популярна, и решение уже распространено. Как определить, являются ли данные типом массива?
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
Метод JS для определения типа массива
Метод 1 экземпляр
Следовательно, экземпляр, имя означает, экземпляр, пример. Следовательно, экземпляр используется для определения того, является ли переменная экземпляром объекта. Это трехмерная формула операции-наиболее существенное различие между типом
экземпляр B? Alert ("true"): alert ("false") // Обратите внимание, что значение b - это тип данных, который вы хотите судить, а не строка, такая как массив
Возьмите каштан:
var a = []; console.log (экземпляр массива) // return true
Метод 2 Конструктор
Определение в W3C Определение: свойство конструктора возвращает ссылку на функцию массива, которая создала этот объект
Он возвращает конструктор, соответствующий объекту. По определению, это не очень соответствует экземпляру, но эффекты одинаковы
Например: (экземпляр массива) // a Это экземпляр массива? истинно или ложь
(A.Constructor == Array) // Является ли конструктор, соответствующий экземпляру, соответствующий массиву? истинно или ложь
Возьмите каштан:
Функция сотрудника (имя, работа, родилась) {this.name = name; this.job = job; this.born = born;} var bill = новый сотрудник («Билл Гейтс», «Инженер», 1985); console.log (bill.constructor); // Выходная функция сотрудник (имя, JobTitle, Born) {this.name = name; this.jobtitle = job; this.born = born;}Тогда метод суждения различных типов:
console.log ([]. Constructor == Array); Console.log ({}. Constructor == Object); Console.log ("string" .constructor == String); console.log ((123) .constructor == number); console.log (true.constructor == boolean);------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
Более строгий и общий метод:
функция isArray (object) {return object && typeof object === 'object' && array == object.constructor;}! ! Уведомление:
Используя экземпляры и конструктор, оцениваемый массив должен быть объявлен на текущей странице! Например, на странице (родительская страница) есть структура, страница (под страница) упоминается в структуре, на странице ребенка объявляется массив и присваивается его переменной родительской странице. В настоящее время переменная оценивается, массив == object.constructor; вернется ложным;
причина:
1. Массив - это справочные данные. Во время процесса передачи это всего лишь передача справочного адреса.
2. Адрес, на который ссылаются нативный объект массива каждой страницы, отличается. Соответствующий конструктор массива, объявленного на детской странице, является объектом массива дочерней страницы. Для суждения на родительской странице используемый массив не равен массиву детской страницы; Помните, иначе будет трудно отслеживать проблему!
Метод 3: Метод оценки характеристик
Все вышеперечисленные методы имеют определенные недостатки, но мы должны верить, что мудрость масс всемогущая. Мы можем судить его тип на основе некоторых характеристик массива.
Функция isArray (object) {return object && typeof object === 'object' && typeof object.length === 'number' && typeof object.splice === 'function' && // просто определить, является ли свойство длины перечисленным для Arrys, false будет получено!Наличие длины и сращивания не обязательно является массивом, потому что наиболее важным фактором суждения является добавление атрибутов к объектам, но не перечисляя атрибуты длины.
PS: Здесь мы популяризируем метод PropertySeNumerable:
объект. PropertySeNumerable (пропаганда)
Определите, можно ли указать указанный атрибут
ПРИМЕЧАНИЕ. Если пропаганда существует в объекте и может быть исчерпывающе перечислен с использованием ... в цикле, свойство PropertySeNumerable возвращает True. Если объект не имеет указанного свойства, или указанное свойство не подлежит перечислению, свойство PropertySeNumerable возвращает false.
Собственность PropertySemerable не учитывает объекты в цепочке прототипа.
Пример:
var a = new Array («Apple», «Банан», «Кактус»); document.write (a.propertyisenumerable (1));
Метод 4 Самый простой метод
Функция isarray (o) {return object.prototype.tostring.call (o) === '[object array]';}Вышеуказанное - все содержание этой статьи. Для получения дополнительной информации о JavaScript вы можете проверить: «Справочный учебник JavaScript» и «Руководство по стилю кода JavaScript». Я также надеюсь, что все будут поддерживать Wulin.com больше.