0

如果数组中的至少一个值与同一位置的其他数组中的值相同,我如何使用 javascript 检测?如果你不明白,这个例子会帮助你。

这应该返回 true:

var array = [
    [
        [3, 5],
        [2, 3]
    ],
    [
        [2, (1)],
        [4, 5]
    ],
    [
        [2, (1)],
        [4, 5]
    ],
];

这应该返回 false:

var array = [
    [
        [3, 4],
        [2, 3]
    ],
    [
        [2, 1],
        [4, 5]
    ],
];
4

2 回答 2

0
function test(array) {
    for(var i=0; i<array.length-1; i++) {
        for(var j=i+1; j<array.length; j++) {
            for(var k=0; k<array[i].length; k++) {
                for(var l=0; l<array[i][k].length; l++) {
                    if(array[i][k][l]==array[j][k][l]) {
                        return true;
                    }
                }   
            }
        }
    }

    return false;
}

test([[[3,5],[2,3]],[[2,1],[4,5]],[[2,1],[4,5]]]); // true

test([[[3,4],[2,3]],[[2,1],[4,5]]]); // false

test([[[3,1,4],[1,3,5]],[[7,3,3],[4,5,5]]]) // true
于 2012-07-31T20:07:24.877 回答
0
function arrayCheck(array){
    var i = 0;
    while(i < array.length){
        j = 1;
        while(i+j < array.length){
            if(array[i] == array[i+j]){
                return true;
            }
            j++;
        }
        i++;
    }
    return false;
}
于 2012-07-31T20:17:03.487 回答