typeof Operatörü
typeof operatörü, bir parametrenin türünü belirlemeye
izin verir (sayı, dize, nesne). Operatör, türü içeren
bir dize döndürür ('number',
'string', 'object').
null
için operatör 'object' döndürür (bu
dilin kabul edilmiş bir hatasıdır). Fonksiyonlar için operatör
'function' döndürür. Bu,
kullanım kolaylığı için yapılmıştır, çünkü 'function'
türü aslında yoktur.
Sözdizimi
typeof operatörünün 2 sözdizimi vardır
(her iki sözdizimi de aynı şekilde çalışır):
typeof parametre;
typeof(parametre);
Örnek
typeof'un bir sayı ile nasıl çalıştığını görelim:
typeof 1;
Yürütülen kodun sonucunda
number değerini alırız:
'number'
Örnek
Şimdi parametre olarak bir dize verelim:
typeof 'str';
Kodun yürütülmesinin sonucu:
'string'
Örnek
Şimdi parametre olarak true
boolean değerini belirtelim:
typeof true;
Kodun yürütülmesinin sonucu:
'boolean'
Örnek
undefined değerinin türünün ne olduğuna bakalım:
typeof undefined;
Kodu yürüttükten sonra
yine undefined alırız:
'undefined'
Örnek
Şimdi boş bir nesnenin türünü öğrenelim:
typeof {};
Kodun yürütülmesinin sonucu:
'object'
Örnek
Şimdi de boş bir dizinin türünü öğrenelim:
typeof [];
Sonuç olarak yine
'object' alırız:
'object'
Örnek
null değerinin türünü öğrenelim:
typeof null;
Sonuç olarak yine 'object' alırız, ki bu
dilin kabul edilmiş bir hatasıdır:
'object'
Örnek
Şimdi boş bir fonksiyonun türünü belirleyelim:
typeof function() {};
Kodu yürüttükten sonra,
böyle bir tür olmamasına rağmen
'function' alırız.
Bu dize, bir fonksiyonu belirlerken
kullanıcı kolaylığı için gereklidir:
'function'
Örnek
Sadece sayıları yazdıracak bir fonksiyon yazalım:
function printNumber(number) {
if (typeof number === 'number') {
console.log(number);
}
}
printNumber(2);
printNumber('str');
printNumber(3);