What are the best practices to follow when declaring an array in Javascript?

后端 未结 9 1118
闹比i
闹比i 2020-11-28 02:11

When I need to declare a new array I use this notation

var arr = new Array();

But when testing online, for example on jsbin, a warning sign

9条回答
  •  Happy的楠姐
    2020-11-28 02:33

    Mostly, people use var a = [] because Douglas Crockford says so.

    His reasons include the non-intuitive and inconsistent behaviour of new Array():

    var a = new Array(5);     // an array pre-sized to 5 elements long
    var b = new Array(5, 10); // an array with two elements in it
    

    Note that there's no way with new Array() to create an array with just one pre-specified number element in it!

    Using [] is actually more efficient, and safer too! It's possible to overwrite the Array constructor and make it do odd things, but you can't overwrite the behaviour of [].

    Personally, I always use the [] syntax, and similarly always use {} syntax in place of new Object().

提交回复
热议问题