Javascript, neden olur &; 0&; kendisi tarafından '' değilse false tarafından test edildiğinde yanlış, ama eşit""?
Aşağıdaki "0"
Javascript yanlış olduğunu gösterir:
>>> "0" == false
true
>>> false == "0"
true
Neden aşağıdaki yazdırma "ha"
?
>>> if ("0") console.log("ha")
ha
CEVAP
Nedeni açıkça zaman "0" == false
, her iki tarafın da rakamlara dönüştürülmektedir . çünkü ^em>sonrakarşılaştırma gerçekleştirilir.
Zaman:* *7, dize değeri test ediliyor. Herhangi bir boş olmayan bir dize boş bir dize false
8**.
Eşit (==)
Eğer iki işlenen iseaynı türden değilİşlenen sonra sıkı karşılaştırma geçerlidir dönüştürür JavaScript. Eğer ya da işlenenbir sayı veya bir booleanişlenen başka varsa ya da işlenen ise mümkün; eğer sayılara dönüştürülürbir dizediğer işlenen mümkünse bir dizeye dönüştürülür. Eğerher iki işlenen nesnelerdiro zaman JavaScript karşılaştırır işlenen bellekteki aynı nesneye başvurduğunuzda eşit olan iç kaynaklar.
(Mozilla Geliştirici Ağı Comparison Operators)
Neden metin dosyaları Apache tarafında...
.debug: Geçersiz komut 'RewriteEn...
Neden Lambda daha düz fonksiyonları da...
Neden saf sanal işlev 0 tarafından baş...
Bir şekilde programlı olarak eğer bell...