Obwohl Javascript eine schwach typisierte Sprache ist, verfügt es auch über mehrere eigene Datentypen, nämlich: Zahl, Zeichenfolge, Boolean, Objekt, Udefiniert und Null. Unter diesen ist Object ein komplexer Datentyp und Object besteht aus ungeordneten Schlüssel-Wert-Paaren. Die verbleibenden verschiedenen Typen sind einfache Datentypen. Hinweis: Der erste Buchstabe des Variablentyps wird großgeschrieben, während der erste Buchstabe des Variablenwerts kleingeschrieben wird.
JavaScript unterstützt keine benutzerdefinierten Typen, daher gehören alle Werte in JavaScript zu einem dieser sechs Typen.
Um herauszufinden, um welchen Datentyp es sich bei einer Variablen handelt, müssen Sie den Operator „typeof“ verwenden. Beachten Sie, dass es sich bei „typeof“ um einen Operator und nicht um eine Methode handelt.
Syntax: typeof temp; //temp ist eine Variable. Sie müssen hier keine Klammern hinzufügen, aber für die Lesbarkeit des Programms ist es am besten, Klammern hinzuzufügen.
JavaScript selbst kann typeof verwenden, um den Typ von Variablen zu erkennen, aber einige Ergebnisse sind verwirrend. Beispielsweise ist der Typ des Arrays tatsächlich „Objekt“.
Das Folgende sind die Ergebnisse der Verwendung von typeof zur Beurteilung verschiedener Datentypen
var myFunction = function() { console.log('hello'); }; var myObject = { foo : 'bar' }; var myArray = [ 'a', 'b', 'c' ]; var myString = 'hello'; var myNumber = 3; typeof myFunction; // 返回 'function' typeof myObject; // 返回 'object' typeof myArray; // 返回 'object' -- 小心哦! typeof myString; // 返回 'string'; typeof myNumber; // 返回 'number' typeof null; // 返回 'object' -- 小心哦! if (myArray.push && myArray.slice && myArray.join) { // 很可能是一个数组 // 当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。 } if (Object.prototype.toString.call(myArray) === '[object Array]') { // 肯定是一个数组! // 这是判断一个变量是否为数组的最可靠方法 }