例如,我有這樣的代碼在n次迭代地獄:如何避免-的if-else使用JavaScript
var Foo = [1,2,3,4];
function searchInFoo(n) {
for(var i = 0, arrayLength = Foo.length; i < arrayLength; i++) {
if(Foo[i] === n) {
console.log("N: " + n + " found!");
} else {
console.log("N: " + n + " not found!");
}
}
}
searchInFoo(4);
好了,正如我預料我美孚陣列具有n個元素我也是n爲迭代循環。這很酷。所以,如果我用任何n參數調用searchInFoo函數,我的函數也會執行if if else語句中的所有塊n次。例如,在上面的例子中,我曾經記錄過「發現」,並且三次發現「N:n not found!」。
什麼是避免在其他塊的執行,而不失去一些基本的錯誤捕獲功能,最好的辦法,實際上發生了什麼,當我忽略整個else塊喜歡這裏:
var Foo = [1,2,3,4];
function searchInFoo(n) {
for(var i = 0, arrayLength = Foo.length; i < arrayLength; i++) {
if(Foo[i] === n) {
console.log("N: " + n + " found!");
}
}
}
searchInFoo(1);
如果省略了'else'塊和測試爲假,則代碼if塊中被跳過,對環繼續。 –