objetos new multidimensional matriz ejemplos array javascript jslint

multidimensional - new array javascript



Lo que está mal con var x=new Array(); (5)

En JSLint, advierte que

var x = new Array();

(Ese no es un nombre de variable real) debe ser

var result = [];

¿Qué pasa con la primera sintaxis? ¿Cuál es el razonamiento detrás de la sugerencia?


Es más seguro usar [] de lo que es usar una new Array() , porque puedes anular el valor de la Array en JavaScript:

Array = function() { }; var x = new Array(); // x is now an Object instead of an Array.

En otras palabras, [] no es ambiguo.


No hay nada de malo en ninguna de las formas, pero normalmente se ven literales siempre que sea posible-

var s = '''' no es más correcto que var s = new String () ....


No hay nada malo con la primera sintaxis per se. De hecho, en w3schools , enumera una new Array() como la forma de crear una matriz. El problema es que esta es la "vieja manera". La "nueva forma", [] es más corta y le permite inicializar valores en la matriz, como en ["foo", "bar"] . La mayoría de los desarrolladores prefieren [] a la new Array() en términos de buen estilo.


Parece que puede obtener un rendimiento diferente en función del uso y para qué fines, según el navegador o el entorno:

http://jsperf.com/new-array-vs-literal/11 ([1, .2] vs new Array (1, .2)) el literal es mucho más rápido en esta circunstancia.

http://jsperf.com/new-array-vs-literal/7 (nuevo Array (500000) vs [] .length (500000)) nuevo Array es más rápido en chrome v21, parece para este test en aproximadamente 7% o 30 %) dependiendo de lo que hagas.