2015-10-22 93 views
-1

該計劃應在第4迭代爲什麼在不執行此警報的if語句

var animals = ["horse", "ox", "cow", "pig", "duck"]; 
var i = 0; 
while (i < animals.length) { 
    if (animals.slice(i, i + 1) === "pig") { 
     alert("Found it"); 
     break; 
    } 
i++; 
} 
+1

一步一步地調試代碼有助於解決錯誤。 – Tushar

+1

如果要檢查數組中是否存在元素,請使用'indexOf','animals.indexOf('pig')> -1' – Tushar

回答

2

animals.slice當你比較它的返回字符串數組顯示警報Found it。試着用:

if (animals[i] === "pig") {} 
2
var animals=["horse", "ox", "cow", "pig", "duck"]; 
var i = 0; 
while (i < animals.length) { 
    if (animals[i] = "pig") { 
     alert("Found it"); 
     break; 
    } 
i++; 
} 

這將解決您的問題。不要在您的代碼中使用slice