ventajas usar son porque objetos los lenguaje ejemplos desventajas cuales comandos array javascript

son - porque usar javascript



Ventajas de usar[] sobre el nuevo Array() en JavaScript (7)

¿Cuáles son las ventajas de usar

var foo = [];

sobre uso

var bar = new Array();

Me han dicho que use [] sobre la nueva matriz () pero nunca con mucha explicación.


Ambos pueden ser utilizados como buenos. Esta discusión / confusión ha comenzado desde que el gurú de Javascript, Douglas Crockford, dijo que la new palabra clave se considera dañina . Desde entonces, se consideró "buena práctica / técnica" omitir la new palabra clave para evitar resultados / comportamientos inesperados. También vea este tema de .


Es lo mismo. La única razón para usar [] sobre la new Array() es que es más corto.


La razón principal para usar [] en contraposición a la new Array() son los argumentos que pasa. Cuando usa la new Array(10) , crea una matriz vacía con 10 elementos, pero cuando usa [10] , crea una matriz con un elemento cuyo valor es 10 . Debido a que generalmente esta es la información que la mayoría de los programadores desean pasar a una matriz (ya que las matrices son dinámicas en Javascript), generalmente se considera la mejor práctica. También la new Array(10,20) funciona de manera diferente a la new Array(10) . En este caso, tiene el mismo efecto que [10,20] que es crear una matriz con 2 elementos, 10 y 20. Ya que esto es ... extraño en el mejor de los casos ... es fácil crear una matriz vacía al pasar accidentalmente new Array() solo un valor. [] siempre tiene el mismo efecto, por lo que también recomiendo seguir con él.


Más corto y más limpio. Debería usar {} para crear objetos también.


Te anota menos símbolos en el código golf.


Tres razones (las dos primeras se expandieron en otras respuestas):

  1. Más corta;
  2. Permite la creación de arreglos con un elemento, como se detalla en la respuesta de Chibu;
  3. Funciona incluso en el improbable caso de que el constructor Array haya sido sobrescrito.

No razones:

  1. Evitar al new operador. No tengas miedo de lo new solo porque Douglas Crockford fue una vez mordido por él. Es extremadamente útil.

  • más corta
  • los argumentos de Array son confusos (por ejemplo, el new Array(10) y el new Array("10") son bastante diferentes)