Have a look at this code sample or go to the jsfiddle
function printRelation(a, b, out) {
    var text;
    if (a === b) {
        text = "a === b";
    } else if (a == b) {
        text = "a == b";
    } else {
        text = "a != b";
    }
    $('#' + out).text(text);
}
var a = [0, 0, 2], b = a;
printRelation(a, b, 'out1');
a = [0, 0, 2];
b = [0, 0, 2];
printRelation(a, b, 'out2');
I would have expected both tests to output a === b, but only the first one does. The second one outputs a != b. Can anyone explain this behaviour? How can I efficiently compare arrays in javascript?
 
     
     
     
    