JavaScript-typeof

JavaScript-typeof

Es gibt in JavaScript 5 verschiedene Daten Typen, die Werte enthalten können:

  • string
  • number
  • boolean
  • object
  • function

Es gibt 6 Arten von Objekten:

  • Object
  • Date
  • Array
  • String
  • Number
  • Boolean

sowie 2 Arten von Daten Typen verwenden, die keine Werte enthalten können:

  • null
  • undefined

der typeof-Operator

Sie können typeof der Operator, um den Daten Typ eines JavaScript-Variablen zu bestimmen.

Beispiel

typeof "Bill"                 // gibt "string" zurück
typeof 3.14                   // gibt "number" zurück
typeof NaN                    // gibt "number" zurück
typeof false                  // gibt "boolean" zurück
typeof [1,2,3,4]              // gibt "object" zurück
typeof {name:'Bill', age:19}  // gibt "object" zurück
typeof new Date()             // gibt "object" zurück
typeof function () {}         // gibt "function" zurück
typeof myCar                  // gibt "undefined" zurück *
typeof null                   // gibt "object" zurück

Probieren Sie es selbst aus

Bitte beachten Sie:

  • Der Daten Typ von NaN ist Zahl
  • Der Daten Typ von Array ist Objekt
  • Der Daten Typ von Datum ist Objekt
  • Der Daten Typ von null ist object
  • Der Daten Typ eines nicht definierten Variablen ist undefined *
  • Der Daten Typ eines nicht zugewiesenen Variablen ist auch undefined *

Sie können typeof um zu bestimmen, ob ein JavaScript-Objekt ein Array (oder ein Datum) ist.

Ursprüngliches Datum

Der ursprüngliche Datenwert bezieht sich auf einen einzelnen einfachen Datenwert ohne zusätzliche Eigenschaften und Methoden.

typeof Der Operator kann einen der folgenden ursprünglichen Typen zurückgeben:

  • string
  • number
  • boolean
  • undefined

Beispiel

typeof "Bill"              // returns "string"
typeof 3.14                // returns "number"
typeof true                // returns "boolean"
typeof false               // returns "boolean"
typeof x                   // returns "undefined" (if x has no value)

Probieren Sie es selbst aus

complex data

typeof The operator can return one of two complex types:

  • function
  • object

typeof The operator returns "object" for objects, arrays, and null.

typeof The operator does not return "object" for functions.

Beispiel

typeof {name:'Bill', age:19} // returns "object"
typeof [1,2,3,4]             // returns "object" (not "array", please note the following example)
typeof null                  // returns "object"
typeof function myFunc(){}   // returns "function"

Probieren Sie es selbst aus

typeof The operator returns for arrays "object", because arrays are objects in JavaScript.

data types of typeof

typeof The operator is not a variable. It is just an operator. The operators (+ - * /) have no data type.

However,typeof The operator is alwaysreturns a stringincluding the type of the operand).

constructor attribute

constructor The property returns the constructor of all JavaScript variables.

Beispiel

"Bill".constructor                // returns function String()  {[native code]}
(3.14).constructor                // returns function Number()  {[native code]}
false.constructor                 // returns function Boolean() {[native code]}
[1,2,3,4].constructor             // 返回 function Array()   {[native code]}
[1,2,3,4].constructor             // gibt function Array()   {[native code]} zurück
{name:'Bill',age:19}.constructor  // gibt function Object()  {[native code]} zurück
new Date().constructor            // gibt function Date()    {[native code]} zurück

Probieren Sie es selbst aus

function () {}.constructor // gibt function Function(){[native code]} zurück Sie können den Constructor-Attribut überprüfen, um zu bestimmen, ob ein Objekt "Date"

Beispiel

Array-Funktion
  "Array"
return myDate.constructor === Date;

Probieren Sie es selbst aus

return myDate.constructor.toString().indexOf("Date") > -1;return myArray.constructor.toString().indexOf("Array") > -1;Datumsfunktion

Beispiel

Array-Funktion
  function isArray(myArray) {
return myDate.constructor === Date;

Probieren Sie es selbst aus

return myArray.constructor === Array; Sie können den Constructor-Attribut überprüfen, um zu bestimmen, ob ein Objekt "Date"

Beispiel

:
  Wort):
return myDate.constructor === Date;

Probieren Sie es selbst aus

return myDate.constructor.toString().indexOf("Date") > -1;oder noch einfacher, Sie können überprüfen, ob ein ObjektDatumsfunktion

Beispiel

:
  function isDate(myDate) {
return myDate.constructor === Date;

Probieren Sie es selbst aus

}

Undefiniert undefinedIn JavaScript ist der Wert einer Variable ohne Wert undefined

Beispiel

. Der Typ ist auch

Probieren Sie es selbst aus

let car; // Der Wert ist undefined, der Typ ist auch undefined. undefineddurch die Festlegung seines Wertes undefined

Beispiel

car = undefined;    // Der Wert ist undefined, der Typ ist auch undefined.

Probieren Sie es selbst aus

Ein leerer Wert

Ein leerer Wert kann jede Variable löschen. Der Typ wird auch undefined unbeachtlich.

Eine leere Zeichenkette hat sowohl einen gültigen Wert als auch einen Typ.

Beispiel

let car = "";    // Der Wert ist "", der Typ ist "string"

Probieren Sie es selbst aus

Null

In JavaScript null bedeutet "kein Wert" (null). Es sollte etwas sein, das nicht existiert.

Leider ist dies in JavaScript nicht der Fall,null Der Datentyp ist ein Objekt.

Man kann es als einen Bug in JavaScript betrachten,typeof null ist ein Objekt. Der Typ sollte sein null

Sie können ein Objekt auf folgendem Weg setzen: null Um ein Objekt zu leeren:

Beispiel

let person = {firstName:"Bill", lastName:"Gates", age:19, eyeColor:"blue"};
person = null;    // Der Wert ist jetzt null, aber der Typ bleibt Objekt

Probieren Sie es selbst aus

Sie können auch ein Objekt auf folgendem Weg setzen: undefined Um ein Objekt zu leeren:

Beispiel

let person = {firstName:"Bill", lastName:"Gates", age:19, eyeColor:"blue"};
person = undefined;   // Der Wert und der Typ sind jetzt undefined

Probieren Sie es selbst aus

Unterschied zwischen undefined und null

undefined und null Werte sind gleich, aber Typen unterschiedlich:

typeof undefined           // undefined
typeof null                // object
null === undefined         // falsch
null == undefined          // wahr

Probieren Sie es selbst aus