たとえば、次のコードがあります。
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 個の要素を持つ Foo 配列には、 for ループの n 回の繰り返しもあります。カッコいい。したがって、任意の n パラメータを指定して searchInFoo 関数を呼び出すと、関数は if else ステートメント内のすべてのブロックも n 回実行します。たとえば、上の例では、「n found」を 1 回ログに記録し、「N: n not found!」を 3 回ログに記録しました。
基本的なエラーキャッチ機能を失うことなく、elseブロックでの実行を回避するための最良のアプローチは何ですか?ここのように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);