Operatori typeof
Operatori typeof lejon përcaktimin e
llojit të parametrit (numër, varg, objekt). Operatori
kthen një varg, që përmban llojin ('number',
'string', 'object').
Për null
operatori kthen 'object' (kjo është
një gabim i njohur i gjuhës). Për funksionet operatori
kthen 'function'. Kjo është bërë
për lehtësi, pasi lloji 'function'
nuk ekziston.
Sintaksa
Operatori typeof ka 2 sintaksa
(të dyja sintaksat punojnë njësoj):
javascripttypeof parametri;
typeof(parametri);
Shembull
Le të shohim se si typeof punon me
numrin:
javascripttypeof 1;
Si rezultat i kodit të ekzekutuar
ne do të marrim vlerën number:
javascript'number'
Shembull
Tani le të vendosim një varg si parametër:
javascripttypeof 'str';
Rezultati i ekzekutimit të kodit:
javascript'string'
Shembull
Tani le të përcaktojmë vlerën buleane
true si parametër:
javascripttypeof true;
Rezultati i ekzekutimit të kodit:
javascript'boolean'
Shembull
Le të shohim çfarë lloji ka
vlera undefined:
javascripttypeof undefined;
Pas ekzekutimit të kodit
ne do të marrim gjithashtu undefined:
javascript'undefined'
Shembull
Tani le të zbulojmë llojin e një objekti bosh:
javascripttypeof {};
Rezultati i ekzekutimit të kodit:
javascript'object'
Shembull
Dhe tani le të zbulojmë llojin e një grupi bosh:
javascripttypeof [];
Si rezultat do të marrim gjithashtu
'object':
javascript'object'
Shembull
Le të zbulojmë llojin
e vlerës null:
javascripttypeof null;
Si rezultat do të marrim gjithashtu
'object', që është
një gabim i njohur i gjuhës:
javascript'object'
Shembull
Tani le të përcaktojmë llojin e një funksioni bosh:
javascripttypeof function() {};
Pas ekzekutimit të kodit ne do të marrim
'function',
pavarësisht nga fakti se një lloj i tillë
nuk ekziston. Ky varg
nevojitet për lehtësinë e përdoruesit
gjatë përcaktimit të një funksioni:
javascript'function'
Shembull
Le të shkruajmë një funksion, i cili do të shfaqë vetëm numrat:
javascriptfunction printNumber(number) {
if (typeof number === 'number') {
console.log(number);
}
}
printNumber(2);
printNumber('str');
printNumber(3);