Operator typeof
Operator typeof omogućava određivanje
tipa parametra (broj, string, objekat). Operator
vraća string, koji sadrži tip ('number',
'string', 'object').
Za null
operator vraća 'object' (ovo je
priznata greška jezika). Za funkcije operator
vraća 'function'. Ovo je urađeno
radi praktičnosti, pošto tip 'function'
ne postoji.
Sintaksa
Operator typeof ima 2 sintakse
(obe sintakse rade na isti način):
typeof parametar;
typeof(parametar);
Primer
Hajde da pogledamo kako typeof radi sa
brojem:
typeof 1;
Kao rezultat izvršenog koda
dobićemo vrednost number:
'number'
Primer
Sada hajde da postavimo string kao parametar:
typeof 'str';
Rezultat izvršavanja koda:
'string'
Primer
Sada ćemo u parametru navesti bulovsku
vrednost true:
typeof true;
Rezultat izvršavanja koda:
'boolean'
Primer
Hajde da vidimo koji tip
ima vrednost undefined:
typeof undefined;
Nakon izvršavanja koda
dobićemo takođe undefined:
'undefined'
Primer
Sada hajde da saznamo tip praznog objekta:
typeof {};
Rezultat izvršavanja koda:
'object'
Primer
A sada hajde da saznamo tip praznog niza:
typeof [];
Kao rezultat takođe ćemo dobiti
'object':
'object'
Primer
Hajde da saznamo tip
vrednosti null:
typeof null;
Kao rezultat takođe ćemo dobiti
'object', što predstavlja
priznatu grešku jezika:
'object'
Primer
Sada ćemo odrediti tip prazne funkcije:
typeof function() {};
Nakon izvršavanja koda dobićemo
'function',
uprkos tome što takav tip
ne postoji. Ovaj string
je potreban radi praktičnosti korisnika
prilikom određivanja funkcije:
'function'
Primer
Napišimo funkciju koja će ispisivati samo brojeve:
function printNumber(number) {
if (typeof number === 'number') {
console.log(number);
}
}
printNumber(2);
printNumber('str');
printNumber(3);