JavaScript’te 0’ın Boş String’e Eşit Olması

Sözelciler anlamaz… Şaka bir yana çok saçma değil mi 0 = “” gerçekten akıl sağlığınızı oynatabilirsiniz JavaScript’te sıfırın boş string’e eşit olmasına ama durun bekleyin hele sebebine gelelim. JavaScript’te diğer programlama dillerinde olmayan değişkenin türünü tanımlama otomatik olarak gerçekleştirilir yani değişken integer mı string mi boolean mı ya da date mi gibi tanımlamarı kullanmazsınız; gerek kalmaz… Ancak işte bu gerek kalmadığı yerde sıfırın boş string’e eşit olması gibi absürt şeyler oluşabiliyor.

Örnek verelim durum ile ilgili ;

if( 0 == "" ){
  console.log( "sıfır rakamı boş string'e eşit" );
}

burada eşitlik ifadesi ile karşılaştırdığımız değerlerden en az birisinin türü “sayı”… yani sıfır burada number olarak tanımlanmış ve karşıdakinin de number olmasını bekler; olmadığı için normalde false döndürür ancaaaaak; boşluk string ifadeler için sıfır anlamını taşır dolayısı ile true döner ve konsolumuzda nur topu gibi yazımız yazar. aynı şekilde:

0 == "0"
0 == ""
"" == 0

ifadeleri de true döner peki ya

"0" == ""

ne döner?işte bu false döner 🙂

You may also like...

Bir cevap yazın