Operateur typeof

Die typeof operateur laat toe om die tipe van 'n parameter te bepaal (getal, string, objek). Die operateur gee 'n string terug wat die tipe bevat ('number', 'string', 'object').

Vir null gee die operateur 'object' terug (dit is 'n erkende fout in die taal). Vir funksies gee die operateur 'function' terug. Dit is gedoen vir gerief, aangesien daar nie 'n 'function' tipe bestaan nie.

Sintaksis

Die typeof operateur het 2 sintaksisse (beide sintaksisse werk eenders):

javascripttypeof parameter;
typeof(parameter);

Voorbeeld

Kom ons kyk hoe typeof werk met 'n getal:

javascripttypeof 1;

Na die uitvoering van die kode kry ons die waarde number:

javascript'number'

Voorbeeld

Laat ons nou 'n string as parameter gee:

javascripttypeof 'str';

Resultaat van die kode-uitvoering:

javascript'string'

Voorbeeld

Laat ons nou die Booleaanse waarde true as parameter spesifiseer:

javascripttypeof true;

Resultaat van die kode-uitvoering:

javascript'boolean'

Voorbeeld

Kom ons sien watter tipe die waarde undefined het:

javascripttypeof undefined;

Na die uitvoering van die kode kry ons ook undefined:

javascript'undefined'

Voorbeeld

Kom ons bepaal nou die tipe van 'n leë objek:

javascripttypeof {};

Resultaat van die kode-uitvoering:

javascript'object'

Voorbeeld

En nou bepaal ons die tipe van 'n leë array:

javascripttypeof [];

As gevolg hiervan kry ons ook 'object':

javascript'object'

Voorbeeld

Kom ons bepaal die tipe van die waarde null:

javascripttypeof null;

As gevolg hiervan kry ons ook 'object', wat 'n erkende fout in die taal is:

javascript'object'

Voorbeeld

Laat ons nou die tipe van 'n leë funksie bepaal:

javascripttypeof function() {};

Na die uitvoering van die kode kry ons 'function', ten spyte daarvan dat so 'n tipe nie bestaan nie. Hierdie string is nodig vir die gebruiker se gerief by die identifisering van 'n funksie:

javascript'function'

Voorbeeld

Laat ons 'n funksie skryf wat slegs getalle sal uitskryf:

javascriptfunction printNumber(number) {
  if (typeof number === 'number') {
    console.log(number);
  }
}

printNumber(2);
printNumber('str');
printNumber(3);

Sien ook

  • die funksie isNaN,
    wat 'n toets vir NaN uitvoer
  • die funksie isFinite,
    wat 'n getal vir eindigheid toets