JavaScript typeof

JavaScript typeof

Der er 5 forskellige datatyper, der kan indeholde værdier i JavaScript:

  • string
  • number
  • boolean
  • object
  • function

Der er 6 typer af objekter:

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

og 2 datatyper, der ikke kan indeholde værdier:

  • null
  • undefined

typeof-operator

Du kan bruge typeof operator for at bestemme datatypen af en JavaScript-variabel.

Eksempel

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

Prøv det selv

Bemærk venligst:

  • NaNs datATYPE er number
  • Arrayets datATYPE er object
  • Datums datATYPE er object
  • nulls datatype er object
  • Udefinerede variabels datatype er undefined *
  • Uden for værdens variabels datatype er også undefined *

Du kan ikke bruge typeof for at bestemme om et JavaScript-objekt er en array (eller dato).

Oprindelig dato

Oprindelige dataværdier er enkel dataværdier uden yderligere egenskaber og metoder.

typeof Operatører kan returnere en af følgende oprindelige datatyper:

  • string
  • number
  • boolean
  • undefined

Eksempel

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

Prøv det selv

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.

Eksempel

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

Prøv det selv

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

typeof data types

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

However,typeof The operator is alwaysReturns a stringIncluding the type of the operand).

Constructor attribute

constructor Property returns the constructor of all JavaScript variables.

Eksempel

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

Prøv det selv

function () {}.constructor // Returnerer function Function(){[native code]} du kan kontrollere constructor-attributten for at bestemme, om objektet er en array (inkluderer "Date"

Eksempel

arrayfunktion
  "Array"
return myDate.constructor === Date;

Prøv det selv

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

Eksempel

arrayfunktion
  function isArray(myArray) {
return myDate.constructor === Date;

Prøv det selv

return myArray.constructor === Array; du kan kontrollere constructor-attributten for at bestemme, om objektet er en dato (inkluderer "Date"

Eksempel

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

Prøv det selv

return myDate.constructor.toString().indexOf("Date") > -1;eller endnu mere simpelt, du kan kontrollere om objektet erdatofunktion

Eksempel

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

Prøv det selv

}

Undefineret undefinedi JavaScript er værdien af en variabel uden værdi undefined

Eksempel

og typen også

Prøv det selv

let car; // Værdien er undefined, typen også er undefined. undefinedved at sætte dens værdi til undefined

Eksempel

car = undefined;    // Værdien er undefined, typen også er undefined.

Prøv det selv

en tom værdi

en tom værdi kan opretholde enhver variabel. Typen vil også være undefined uforenelig.

En tom streng har både gyldige værdier og en type.

Eksempel

let car = "";    // Værdien er "", typen er "string"

Prøv det selv

Null

i JavaScript null er "ingen" (null). Det bør være noget, der ikke eksisterer.

Desværre, i JavaScript,null Databeens type er et objekt.

Du kan tænke på det som en bug i JavaScript.typeof null er en object. Typen bør være null

Du kan sætte objektet til null For at tømme objektet:

Eksempel

let person = {firstName:"Bill", lastName:"Gates", age:19, eyeColor:"blue"};
person = null;    // Nu er værdien null, men typen er stadig object

Prøv det selv

Du kan også gøre det ved at sætte objektet til undefined For at tømme objektet:

Eksempel

let person = {firstName:"Bill", lastName:"Gates", age:19, eyeColor:"blue"};
person = undefined;   // Nu er værdi og type udefineret

Prøv det selv

Forskellen mellem undefined og null

undefined og null Værdier er lig, men typer er forskellige:

typeof undefined           // undefined
typeof null                // object
null === undefined         // false
null == undefined          // true

Prøv det selv