Der Inhalt dieses Artikels befasst sich mit der Frage, wie man den Datentyp eines Objekts in JavaScript bestimmt. , hat einen bestimmten Referenzwert, Freunde in Not können sich darauf beziehen, ich hoffe, es wird Ihnen hilfreich sein.
Zusammenfassung der booleschen Werttypen verschiedener Daten in js: false: empty string; wahr: Bis auf den obigen falschen Fall ist alles andere wahr;
Es gibt sechs Datentypen in JavaScript : string; Array;Objekt;null;undefiniert. Wie erkennt man diese Datentypen? Die Zusammenfassungsmethode lautet wie folgt:
Die erste Methode: typeofvar obj = {'name':'Tom'}
var arr = ['a','b','c']
var str = 'chenxinming'
var bool = true
var num = 1
var n = null
var fn = function(n){
console.log(n)
}
console.log(typeof obj) // object
console.log(typeof arr) // object
console.log(typeof str) // string
console.log(typeof bool) // boolean
console.log(typeof num) // number
console.log(typeof n) // object
console.log(typeof fn) // function
var obj = {'name':'Tom'}
var arr = ['a','b','c']
var str = 'chenxinming'
var bool = true
var num = 1
var n = null
var fn = function(n){
console.log(n)
}
console.log(obj instanceof Object) // true
console.log(arr instanceof Array) // true
console.log(str instanceof String) // false
console.log(bool instanceof Boolean) // false
console.log(num instanceof Number) // false
console.log(n instanceof Object) // false
console.log(fn instanceof Function) // true
Wenn die Methode „instanceof“ prüft, ob das Array ein Objekt ist, ist das Rückgabeergebnis „True“
var arr = ['a','b','c'] console.log(arr instanceof Object) // true
Wenn Sie „instanceof“ verwenden, Sie müssen streng beurteilen, ob es sich um ein Array handelt. Der verbesserte Code lautet wie folgt:
var obj = {'name':'Tom'} var arr = ['a','b','c'] var str = 'chenxinming' var getDataType = function(data){ if(data instanceof Array){ return 'Array' } else if (data instanceof Object){ return 'Object' } else{ return 'data is not obejct type' } } getDataType(obj) // Object getDataType(obj) // Array getDataType(obj) // data is not obejct type
Die dritte Methode: Konstruktor
var obj = {'name':'Tom'} var arr = ['a','b','c'] var str = 'chenxinming' var bool = true var num = 1 var n = null var fn = function(n){ console.log(n) } console.log(obj.constructor == Object) // true console.log(arr.constructor == Array) // true console.log(str.constructor == String) // true console.log(bool.constructor == Boolean) // true console.log(num.constructor == Number) // true console.log(fn.constructor == Function) // true
Der Test ergab, dass der Konstruktor unterstützt die Überprüfung von Objekt, Array, String, Boolean, Zahl, Funktion
Die vierte Methode: toString (empfohlen)var obj = {'name':'Tom'}
var arr = ['a','b','c']
var str = 'chenxinming'
var bool = true
var num = 1
var n = null
var fn = function(n){
console.log(n)
}
console.log(Object.prototype.toString.call(obj)) // [object Object]
console.log(Object.prototype.toString.call(arr)) // [object Array]
console.log(Object.prototype.toString.call(str)) // [object String]
console.log(Object.prototype.toString.call(bool)) // [object Boolean]
console.log(Object.prototype.toString.call(num)) // [object Number]
console.log(Object.prototype.toString.call(n)) // [object Null]
console.log(Object.prototype.toString.call(fn)) // [object Function]
Das obige ist der detaillierte Inhalt vonWie ermittelt man den Datentyp eines Objekts in Javascript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!