假设我正在使用每个循环通过数组进行迭代,我需要知道何时重复获得相同的值。
var array = [];
array[33] = 12;
array[3] = 32;
array[323] = 234;
array[25267] = 34;
array[7] = 342;
var valueBuffer;
$.each(array, function( index, value ) {
if(valueBuffer == value){
console.log(value+" is the same as previous value");
}else{
console.log(value);
}
valueBuffer=value;
});
这里我可以通过缓冲之前的值来做到这一点。但我需要一种方法在当前循环中这样做。我的索引不在订单中,所以我不能使用for循环并访问+1索引。
我的意思是像
$.each(array, function( index, value ) {
if(nextLoopValue == value){
console.log(value+" is the same as next value");
}else{
console.log(value);
}
});
答案 0 :(得分:0)
var arr = [15,9, 9, 111, 2, 3, 4, 4, 5, 7];
var sorted_arr = arr.sort();
var results = [];
for (var i = 0; i < arr.length ; i++) {
if (sorted_arr[i + 1] != sorted_arr[i]) {
results.push(sorted_arr[i]);
}
}
console.log(results);
答案 1 :(得分:0)
$.each(array, function( index, value ) {
if(array[index+1] == array[index]){
alert(value+" is the same as next value");
}else{
alert(value);
}
});