Why does the JS spread operator not return the same results?

var x = [1, 2, 3, 4, 5];
var y = [...x];
console.log(x);
console.log(y);
console.log(typeof(x));
console.log(typeof(y));
console.log(x == y);
console.log(x === y);

[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
object
object
false
false

Why are the last two lines not True?