¿Crear un objeto vacío en JavaScript con {} o new Object()?

Hay dos formas diferentes de crear un objeto vacío en JavaScript:

var objectA = {}
var objectB = new Object()

¿Hay alguna diferencia en la forma en que el motor de script los maneja? ¿Hay alguna razón para utilizar uno sobre el otro?

Del mismo modo, también es posible crear una matriz vacía utilizando una sintaxis diferente:

var arrayA = []
var arrayB = new Array()

Estos tienen el mismo resultado final, pero yo simplemente añadiría que el uso de la sintaxis literal puede ayudar a uno a acostumbrarse a la sintaxis de JSON (un subconjunto de la sintaxis de objetos literales de JavaScript modificado con cadenas), por lo que podría ser una buena práctica a la que dedicarse.

Otra cosa: puedes tener errores sutiles si te olvidas de usar el operador new. Por lo tanto, usar literales te ayudará a evitar ese problema.

En última instancia, dependerá de la situación así como de las preferencias.

Comentarios (0)
var objectA = {}

es mucho más rápido y, según mi experiencia, más utilizado, por lo que probablemente sea mejor adoptar el "estándar" y ahorrar algo de escritura.

Comentarios (3)

Esto es esencialmente lo mismo. Utilice lo que le resulte más conveniente.

Comentarios (4)