typeof-operaattori
typeof-operaattori mahdollistaa
parametrin tyypin määrittämisen
(luku, merkkijono, olio). Operaattori
palauttaa merkkijonon, joka sisältää tyypin ('number',
'string', 'object').
Arvolle null
operaattori palauttaa 'object' (tämä on
tunnustettu kielivirhe). Funktioille operaattori
palauttaa 'function'. Tämä on tehty
käyttäjäystävällisyyden vuoksi, koska tyyppiä 'function'
ei ole olemassa.
Syntaksi
typeof-operaattorilla on 2 syntaksia
(molemmat syntaksit toimivat samalla tavalla):
typeof parametri;
typeof(parametri);
Esimerkki
Katsotaan kuinka typeof toimii
luvun kanssa:
typeof 1;
Suoritetun koodin tuloksena
saamme arvon number:
'number'
Esimerkki
Asetetaan nyt parametriksi merkkijono:
typeof 'str';
Koodin suorituksen tulos:
'string'
Esimerkki
Määritetään parametriksi boolean-
arvo true:
typeof true;
Koodin suorituksen tulos:
'boolean'
Esimerkki
Katsotaan minkä tyyppinen
arvo undefined on:
typeof undefined;
Koodin suorituksen jälkeen
saamme myös undefined:
'undefined'
Esimerkki
Selvitetään nyt tyhjä oliotyyppi:
typeof {};
Koodin suorituksen tulos:
'object'
Esimerkki
Selvitetään nyt tyhjän taulukon tyyppi:
typeof [];
Tuloksena saamme myös
'object':
'object'
Esimerkki
Selvitetään
arvon null tyyppi:
typeof null;
Tuloksena saamme myös
'object', mikä on
tunnustettu kielivirhe:
'object'
Esimerkki
Määritetään nyt tyhjän funktion tyyppi:
typeof function() {};
Koodin suorituksen jälkeen saamme
'function',
vaikka sellaista tyyppiä
ei ole olemassa. Tämä merkkijono
on tarkoitettu käyttäjäystävällisyyteen
funktion tunnistamisessa:
'function'
Esimerkki
Kirjoitetaan funktio, joka tulostaa vain lukuja:
function printNumber(number) {
if (typeof number === 'number') {
console.log(number);
}
}
printNumber(2);
printNumber('str');
printNumber(3);