私は問題を抱えています。頻繁に追加および削除される関数の配列があります。
しかし、配列に対して foreach を実行すると、インデックスが存在しないと表示されます。
入力:
arr[arr.length] = function () { Func() };
削除する:
delete arr[indexToRemove];
今は機能しないので、foreachを使用します
for (key in arr)
インデックスでオーバーフローする可能性があると感じているので、これを防ぐために、空の配列位置を見つけて、その中の項目を再配置したいと思います。これは私がクリーンアップATMのために考えていることです。
var temp = new Array();
var count = 0;
for (key in arr) {
if (arr[key] != null) {
temp[count] = arr[key];
count++;
}
}
arr = temp;
より良い解決策はありますか? 関数スロットの空の配列は null のように見えますか?