JavaScript'te `truthy` ve `falsy`
Bu makale, JavaScript'te truthy
ve falsy
kavramlarını açıklar.
YouTube Video
JavaScript'te truthy
ve falsy
JavaScript'teki truthy
ve falsy
kavramları, özellikle koşullu ifadelerin değerlendirilmesinde çok önemli bir rol oynar. Truthy
ve falsy
, bir değerin doğru (true
) ya da yanlış (false
) olarak değerlendirilip değerlendirilmediğini belirler, ancak bu değerler mutlaka boolean true
veya false
olmayabilir.
Falsy
Değerler
Falsy
değerler, JavaScript koşullu ifadelerinde false
olarak değerlendirilen değerlere atıfta bulunur. Aşağıda JavaScript'teki falsy
değerlerin bir listesi bulunmaktadır.
1const values = [
2 false,
3 0,
4 -0,
5 0.0,
6 -0.0,
7 0n,
8 -0n,
9 "",
10 null,
11 undefined,
12 NaN
13];
14
15for (let value of values) {
16 if (value) {
17 console.log(`${value} is truthy`);
18 } else {
19 console.log(`${value} is falsy`);
20 }
21}
Bu örnekte, tüm falsy
değerler "falsy" olarak çıktılanacaktır. Aşağıda JavaScript'teki falsy
değerlerin bir listesi bulunmaktadır.
false
— Boolean türündefalse
0
— Sıfır sayısı (ondalık olarak0.0
dafalsy
'dir)-0
— Negatif sıfır (teknik olarak0
dan farklıdır ancak yine defalsy
dir)0n
— BigInt türünde sıfır""
— Uzunluğu 0 olan boş bir dizenull
— Değer yokundefined
— Tanımsız değerNaN
— Bir Sayı Değil (Not a Number)
Bu değerler, mantıksal işlemlerde ve koşullu ifadelerde (örneğin if
ifadelerinde) false
olarak değerlendirilir.
Truthy
Değerler
Falsy
olmayan tüm değerler truthy
dir. Bu, boolean true
olarak değerlendirilen değerleri ifade eder. JavaScript'te birçok değer truthy
olarak değerlendirilir.
1const values = [
2 true,
3 1,
4 -1,
5 "Hello",
6 " ",
7 [],
8 {},
9 function() {},
10 Symbol(),
11 Infinity
12];
13
14for (let value of values) {
15 if (value) {
16 console.log(value, ' is truthy');
17 } else {
18 console.log(value, ' is falsy');
19 }
20}
Bu kodda, truthy
değerler "truthy" olarak çıktı verilir. Örneğin, aşağıdaki değerler truthy
olarak kabul edilir.
true
— Boolean türündetrue
- Sayılar (0 dışında) — Örneğin,
1
ve-1
detruthy
dir. - Boş olmayan stringler — örneğin,
"Hello"
veya" "
(sadece boşluk içeren stringler biletruthy
olarak kabul edilir) - Objeler — Boş objeler (
{}
) ve diziler ([]
) biletruthy
dir. - Fonksiyonlar — Fonksiyonların kendileri de
truthy
dir. Symbol
—Symbol
türündeki değerler detruthy
olarak kabul edilir.Infinity
— Hem pozitif hem negatif sonsuzluktruthy
dir.
Truthy
ve falsy
'nin kullanım alanları
Truthy
ve falsy
kavramları genellikle koşullar ve mantıksal işlemlerde kullanılır. Örneğin, ||
(mantıksal VEYA) operatörü kullanarak bir varsayılan değer belirlerken, ilk truthy
değer sonuç olarak döndürülür.
Falsy
değerleri nasıl kontrol edebiliriz
Falsy
değerleri kontrol etmek için Boolean
fonksiyonunu kullanmak oldukça pratiktir. Boolean
fonksiyonu, verilen bir değeri açık bir şekilde boolean türüne dönüştürür.
Boolean
fonksiyonunun örnekleri
1const values = [
2 false,
3 0,
4 "",
5 null,
6 undefined,
7 NaN
8];
9
10for (let value of values) {
11 console.log(`${value} is ${Boolean(value) ? 'truthy' : 'falsy'}`);
12}
Sonuç
JavaScript'teki truthy
ve falsy
, boolean olmayan değerlerin koşul ifadelerinde nasıl değerlendirildiğini anlamak için önemlidir. Falsy
değerlere false
, 0
, boş bir string, null
, undefined
ve NaN
dahildir; diğer tüm değerler ise truthy
olarak değerlendirilir. Bu kavramları anlamak, daha esnek ve verimli kodlar yazmanızı sağlar.
Yukarıdaki makaleyi, YouTube kanalımızda Visual Studio Code'u kullanarak takip edebilirsiniz. Lütfen YouTube kanalını da kontrol edin.