这是一个简单的javascript代码,可以将一个数组中的唯一数据添加到另一个数组中。
var data = [1, 2, 3, 2]
var dump = [];
for (var i = 0; i < data.length; i++) {
if (dump.length == 0) {
dump.push(data[i])
} else {
for (var a = 0; a < dump.length; a++) {
if (dump[a] != data[i]) {
if (a >= dump.length) {
dump.push(data[i])
}
}
}
}
}
我只从数据数组中得到1项:[1]而不是[1,2,3]
答案 0 :(得分:1)
这就是这条线
if (a >= dump.length) {
dump.push(data[i])
}
当a大于或等于dump.length
时,您推送数据但在你的循环中
a < dump.length
它不会在那里
试试这个
for (var a = 0; a < dump.length; a++) {
if (dump[a] == data[i]) { // when found break there
break;
}
}
if (a == dump.length) // if nothing found loop will be fully executed
dump.push(data[i]);