There are no differences between calling Array()
as a function or as a constructor. According to the spec, using Array(…)
as a function is equivalent to using the expression new Array(…)
to create an Array
object instance with the same arguments. To demonstrate this, let's consider the following examples:
// output: []
console.log(Array());
console.log(new Array());
const x = Array(3);
const y = new Array(3);
// output: array of 3 empty slots
console.log(x);
console.log(y);
// output: 3
console.log(x.length);
console.log(y.length);
const x = Array(1, 2, 3);
const y = new Array(1, 2, 3);
// output: [1, 2, 3]
console.log(x);
console.log(y);
// output: 3
console.log(x.length);
console.log(y.length);
This post was published by Daniyal Hamid. Daniyal currently works as the Head of Engineering in Germany and has 20+ years of experience in software engineering, design and marketing. Please show your love and support by sharing this post.