次のような配列があるとします。
myArray = ["a","b","c","d","e"]
そして、それをループして特定の値を見つけて削除したいと思います。
for(var i=0;i<myArray.length;i++){
if(myArray[i] == "b")
myArray.splice(i,1)
}
問題は、スプライスが配列から項目を削除し、削除された項目の前にあるすべての項目がインデックス番号を下にシフトするため、myArray.length
5 としてインスタンス化されましたが、その後のsplice
myArray
長さは 4 しかなく、typeof がスローされるためfor
ループが失敗しますmyArray[4]
フレームワークの一致エラー。
私はこのように機能するフレームワークを使用しています。そのため、このようなアイテム削除手法を利用しています。私の質問は、これを正しい方法で行うにはどうすればよいですか? フレームワークはsplice
メソッドを使用し、私はfor
ループを使用しているので、これについて正しい方法があると思いますか?