是否可以在数组中循环并访问当前每个()循环中的下一个循环周期元素?

时间:2014-12-18 10:54:59

标签: jquery

假设我正在使用每个循环通过数组进行迭代,我需要知道何时重复获得相同的值。

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);
    }
});

2 个答案:

答案 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);
    }
});