тип
Когда TypeOF используется чаще, предназначена для определения того, присутствует ли глобальная переменная, если страница определяет глобальную переменную. Если вы вынесете следующее суждение:
// harooms - это глобальная переменная, если (harooms! = undefined) {} // JS сообщит об ошибке «Uncaught Readingerror: Harooms не определен»Решение состоит в том, чтобы написать следующим образом:
if (typeof haorooms! = undefined) {}После использования TypeOF не будет ошибки! Это одно из типов приложений!
Кроме того, TypeOF также может выносить суждения по типам данных! следующее:
var harooms = "string"; console.log (harooms); // stringvar harooms = 1; console.log (harooms); // numbervar harooms = false; console.log (harooms); // booleanvar harooms; console.log (typeof harooms); // unnfinedvar harooms = null; console.log (typeof harooms); // ObjectVar harooms = document; console.log (typeof harooms); // ObjectVar harooms = []; console.log (harooms); // ObjectVar harooms = function () {}; Console.log (typeof harooms) // Функция В дополнение к оценке типов данных, вы также можете судить типы функцийОчевидно, что для TypeOF, за исключением первых четырех типов, NULL, Object и Array возвращайте все типы объектов;
экземпляр
Его можно использовать, чтобы определить, является ли это массивом.
var harooms = []; console.log (экземпляр harooms ancementof массива) // return true
конструктор
Конструктор - это конструктор, который возвращает соответствующий конструктор объекта.
Как судить о различных типах данных:
console.log ([]. Constructor == Array); Console.log ({}. Constructor == Object); Console.log ("string" .constructor == String); console.log ((123) .constructor == number); console.log (true.constructor == boolean); function name (job, jobrame). this.job = job; this.born = родился; } var haorooms = новый сотрудник («Билл Гейтс», «Инженер», 1985); console.log (harooms.constructor); // Выходная функция сотрудник (имя, JobTitle, Born) {this.name = name; this.jobtitle = job; this.born = born;}Выводя haorooms.constructor, видно, что конструктор возвращает конструктор, соответствующий объекту.
Object.Prototype.toString
Ранее мы упоминали, что мы можем использовать атрибут конструктора для определения типа объекта. Давайте поговорим о методе Object.Propotype.toString.
Object.prototype.tostring.apply ({}) // "[object object]" object.prototype.tostring.apply ([]) // "[object array]" object.prototype.tostring.apply (nan) // "[объект №]" object.prototype.tostring.apply (nan) // "[object]" object.prototype.tostrИспользуя этот метод, мы можем правильно оценить основную шаблон переменной, но если это пользовательский тип, мы не можем знать реальный тип, потому что результат все равно будет [объект объекта]
другой
jQuery также имеет метод суждения типа, ниже приведен пример
$ .IsWindow (окно) // True
Как это сделать
core.js#479IsWindow: function (obj) {return obj! = null && obj == obj.window;}Так что откройте такой объект, как это:
var fakeWindow; fakeWindow = {};Ты солгал ему.
краткое содержание
В JavaScript вы должны правильно судить типы. Когда вы тщательно изучаете их, это действительно трудно. Очень важно разработать ваше суждение в соответствии с различными ситуациями. Мы также должны подумать о том, как судить правильный тип самым простым способом. Конечно, в этой статье все еще есть много вещей, которые не были представлены. Например, метод iSprototypeof. JavaScript - это язык со многими историческими бременными, но он также постоянно улучшается. При использовании его следует обратить внимание на слишком много способов двухсторонних лезвий. Не забудьте использовать их тщательно.