2012-05-22 14 views
6

Javascript kodu: Bu çalışıyorKullanın || Operatör bildirimi

var a = (b) ? b : 40; 

, sadece NetBeans diyor: "|| operatörünü kullanın (Sütun [? nerede])". Hiçbir açıklama bulamadım.

Nedir?

Teşekkürler! Sadece b ait truthyness için test ediyorsanız

+2

Bkz. Http://stackoverflow.com/questions/2802055/what-does-this-construct-xxy-mean –

cevap

6

o zaman bunu yapabilirsiniz:

var a = b || 40; 

... kısadır ve (belki) daha belirgin. JavaScript'te, || bir kısa devre operatördür. Doğruysa sol tarafa döner, aksi takdirde sağ tarafa döner. (yani, girdi bir boole olmadıkça bir boole döndürmez). Eğer b aslında tanımlanması durumunda görmek istiyorsanız

, o zaman çok daha uygundur:

var a = (typeof b !== "undefined") ? b : 40; 
+0

Ne tür bir program dil hala çalışıyor mu? –

+0

@ GáborVarga - Ne sorduğunuzu kesinlikle bilmiyorum. – Quentin

3

boruları or deyimi vardır. var a = b || 40, b değersiz bir değerse, a = b olsun, aksi halde 40.