パフォーマンスにあまり影響を与えずに、複数のアレイを繰り返しスプライスするための最速の方法は何ですか?以下の構文のようなものだと思いますが、うまくいきません。
やりたいこと:Array1- remove[0]
、Array2- remove[1]
、Array3-...remove[2]
など...
for (var i = 0; i < items.length; i++) {
arr[i] = items.name;
for(key in arr[i]) {
var value = arr[i].splice(i, 1);
console.log(value);
}
}
編集(アイテムの定義):
望ましい結果(それぞれ1番目、2番目、3番目のアイテムが削除された3つのアレイ:
[array0]
[0] United Kingdom
[1] United States
[array1]
[0] Canada
[1] United States
[array2]
[0] Canada
[1] United Kingdom
EDIT2-次の比較を見ると、forループを使用して着信配列をグループにプッシュするかどうかがわかります。結果は、Coreyが提供するソリューションと同じですが、両方でスプライスメソッドを実行すると-結果は大きく異なります。例2は正しくスプライスされています。例1は完全にスプライスされているため、混乱しています。
(アイテムは次の形式で提供されます:)
["Canada", "United Kingdom", "United States"]
["Canada", "United Kingdom", "United States"]
["Canada", "United Kingdom", "United States"]
var group = [];
for (var i = 0; i < items.length; i++) {
group.push(items.name);
}
/*for (var i = 0; i < group.length; i++) {
group[i].splice(i, 1);
}*/
console.log(group);
var arr1 = ["One", "Two", "Three"];
var arr2 = ["One", "Two", "Three"];
var arr3 = ["One", "Two", "Three"];
var test = [arr1, arr2, arr3];
/*for (var i = 0; i < test.length; i++) {
test[i].splice(i, 1);
}*/
console.log(test);