Arrays sind nach dem Sortieren auch bei identischen Werten nicht identisch

var a = [1,2,3]
var b = a.sort();

console.log('a',a,'b',b); // a [1,2,3] b [1,2,3]
console.log(a === b); // true

a = [1,3,2];
console.log(a.sort() === b) // false
console.log('a',a,'b',b); // a [1,2,3] b [1,2,3]
console.log(a === b) // false

Meine Fragen sind - warum? [Ich erhalte 2x false.] Und noch eins - es ist möglich, dass das ursprüngliche Array unberührt bleibt, vielleicht ein Parameter oder eine andere Sortierfunktion?

Ich meine

var a = [1,3,2]; 
var b = a.SomeOtherSortFn();
console.log('a',a,'b',b); // a [1,3,2] b [1,2,3]

Bearbeiten Mein Ziel war es nicht zu überprüfen, ob die Arrays gleich sind. Länge vergleichen, Werte durchlaufen - keine große Sache. Meine Frage ist, warum Arrays, die in erster Linie identisch sind, in zweiter Linie nicht identisch sind.

Ich habe meine Antwort bekommen, danke Arun Ghosh.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage