私はJSの初心者で、持っているもので関数を実行する方法を理解するのに苦労しています..
関数:
function compressArray(original) {
var compressed = [];
// make a copy of the input array
var copy = original.slice(0);
// first loop goes over every element
for (var i = 0; i < original.length; i++) {
var myCount = 0;
// loop over every element in the copy and see if it's the same
for (var w = 0; w < copy.length; w++) {
if (original[i] == copy[w]) {
// increase amount of times duplicate is found
myCount++;
// sets item to undefined
delete copy[w];
}
}
if (myCount > 0) {
var a = new Object();
a.value = original[i];
a.count = myCount;
compressed.push(a);
}
}
return compressed;
};
以下のような多次元配列があり、3 番目の要素を取り出して関数を実行します。
var animalcount = [
[2.8, 20, "dog, cat, bird, dog, dog"],
[4.2, 22, "hippo, panda, giraffe, panda"],
[3.7, 41, "snake, alligator, tiger, tiger"]
];
だから私は配列を以下のような単一の配列にする方法を理解しようとしています
var newArray1 = ("dog", "cat", "bird", "dog", dog");
var newArray2 = ("hippo", "panda", "giraffe", "panda");
または理想的には、多次元配列がそのまま維持できるように関数を微調整します。