0

配列内の少なくとも1つの値が同じ場所にある他の配列の値と同じである場合、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 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 に答える
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 に答える