2016-04-07 22 views
0

Yapacak bir şey yoksa bir kod satırını atlamaya çalışıyorum. Ancak, şu hatayı alıyorum: TypeError: _.pairs(...)[0] is undefined. Bu hatayı neden hala alıyorum? Çünkü eğer fonksiyon conditionalFilter atlamak gerekiyordu undefinedJavascript/Underscore undefined sonucunu atlayamaz

Kodu:

Fonksiyon

conditionalFilter(_.pairs(_.pairs(_.pairs(d.nodes[0].children)[0][1].children)[0][1].children)[0][1].dimension, d.dimension.name, d.name)

:

function conditionalFilter(check, dim, filter){ 
if (check != "undefined") { 
    myFunction(check, dim, filter); 
} else {} 
} 

bir fark yapar, hata hattında atar conditionalFilter(_.pairs...)

+1

ben sorun, sadece 'typeof' kaçırıyoruz ve dize' karşı değişkeni karşılaştıran olduğunu düşünüyorum undefined' – Katana314

+0

@ Katana314 giriş için teşekkürler. Ne yazık ki, '(typeof (check)! =" Undefined ")' aynı hatayı atıyor – As3adTintin

+0

@ Katana314 @ doğrudur. Ayrıca, eğer 'check' diğer falsi değerler (örneğin, false, 0, vb.) Olabilirse ve hala işlemek istemiyorsan, o zaman “eğer (kontrol et) {myFunction ...' – Paul

cevap

0

Tanımsız tırnak işaretleri alın,

bunu şimdi bir dizge olarak kontrol ediyoruz sahip yol:

function conditionalFilter(check, dim, filter){ 
if (check != undefined) { 
    myFunction(check, dim, filter); 
} else {} 
}