Операторот typeof

Операторот typeof овозможува да се определи типот на параметарот (број, стринг, објект). Операторот ја враќа стрингот што содржи тип ('number', 'string', 'object').

За null операторот враќа 'object' (ова е призната грешка во јазикот). За функции операторот враќа 'function'. Ова е направено за погодност, бидејќи типот 'function' не постои.

Синтакса

Операторот typeof има 2 синтакси (и двата синтакси работат исто):

javascripttypeof параметар;
typeof(параметар);

Пример

Ајде да видиме како typeof работи со број:

javascripttypeof 1;

Како резултат на извршениот код ќе ја добиеме вредноста number:

javascript'number'

Пример

Сега ајде да поставиме стринг во параметарот:

javascripttypeof 'str';

Резултат од извршувањето на кодот:

javascript'string'

Пример

Сега ќе поставиме булова вредност true во параметарот:

javascripttypeof true;

Резултат од извршувањето на кодот:

javascript'boolean'

Пример

Ајде да видиме кој тип ја има вредноста undefined:

javascripttypeof undefined;

По извршувањето на кодот ќе добиеме исто така undefined:

javascript'undefined'

Пример

Сега ајде да го дознаеме типот на празен објект:

javascripttypeof {};

Резултат од извршувањето на кодот:

javascript'object'

Пример

А сега ајде да го дознаеме типот на празна низа:

javascripttypeof [];

Како резултат исто така ќе добиеме 'object':

javascript'object'

Пример

Ајде да го дознаеме типот на вредноста null:

javascripttypeof null;

Како резултат исто така ќе добиеме 'object', што е призната грешка во јазикот:

javascript'object'

Пример

Сега ќе го определиме типот на празна функција:

javascripttypeof function() {};

По извршувањето на кодот ќе добиеме 'function', и покрај тоа што таков тип не постои. Овој стринг е потребен за погодност на корисникот при определување на функција:

javascript'function'

Пример

Ќе напишеме функција што ќе ги печати само броевите:

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

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

Погледнете ги исто така

  • функцијата isNaN,
    која врши проверка за NaN
  • функцијата isFinite,
    која ја проверува конечноста на бројот