Onur Dayıbaşı

CV
none

Falsy ve Truthy Nedir ?

İlk önce “Falsy” kavramını anlatarak başlamak istiyorum. Boolean kapsamda değeri False olan değişkenlere “falsy” diyoruz. Bunlar if(){}, while(){}, vb durum karşılaştırmalarında ilgili kod bloklarının içerisine girmemesini sağlayarak mantıksal akışlar oluşturmasını sağlar.

Javascipt içerisinde 7 tip falsy değer bulunmaktadır. Aşağıdaki tüm değerler JS tarafından false olarak algılanır.

  • false: boolean değer olarak
  • 0: int değer olarak
  • 0n: BigInt değeri olarak
  • "", '', `` : Boş string değerleri. Double quotes, Single quotes ve String template literals
  • null: Bir değişkenin değeri yok şeklinde bir atama belirtilmiş ise.let a=null
  • undefined: Bir değişken tanımlanırken hiç bir atama yapılmamış ise let a;
  • NaN: Not a Number

Truthy değerler ise falsy dışında kalan bütün değerlerdir. Örneğin aşağıdaki değerler Boolean kapsamında hep true değeri verir

1if (true)
2if ({})
3if ({age:12})
4if ([])
5if ([])
6if (42)
7if ("0")
8if ("false")
9if (new Date())
10if (-42)
11if (12n)
12if (3.14)
13if (-3.14)
14if (Infinity)
15if (-Infinity)

Referanslar