Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Objetos literales

Contenidos

Podemos crear un objeto en JavaScript de diferentes maneras. Pero la forma más común es usar un objeto literal. Aquí hay un ejemplo de eso.

// Normal way
const obj = {
  // key: value
  key: 42
}
console.log(obj.key)

Esto es mucho más fácil que hacer algo como un new Object(), que puedes hacer si quieres. La iniciación literal es muy común en JavaScript. Lo usamos para objetos, arreglos, string, números o cosas como expresiones regulares. La sintaxis literal del objeto admite algunas ventajas modernas. Aquí hay un ejemplo simple donde este objeto define dos propiedades regulares.

const boo = "foo"
const obj = {
  prop1: 1,
  prop2: 'B',
  fn(){}, // regular function
  fn2:()=>{}, // arrow function
  [boo]: 42
}
console.log(obj.boo)
console.log(obj.foo)

Si queremos definir una propiedad que contenga una función, puede usar esta sintaxis más corta con el objeto literal. Por supuesto, si necesita una función flecha, aún puede usar la sintaxis normal. Los literales de objetos modernos también admiten propiedades dinámicas usando esta sintaxis [], que parece un array literal, pero no lo es. JavaScript evaluará lo que hay dentro de los corchetes y hará que el resultado sea el nuevo nombre de propiedad. Entonces, suponiendo que tenemos una variable llamada boo, definida antes de este objeto, vemos que no está definido porque esta propiedad se definió con una sintaxis de propiedad dinámica, lo que significa que JavaScript evaluará primero la expresión, y cualquiera que sea esa expresión se convertirá en la propiedad del objeto. En este caso, el objeto tendrá una respuesta de propiedad con el valor de 42.

const E = Math.E
const obj = {
  E
}
console.log(obj.E)

Otra característica muy popular sobre los objetos literales está disponible para cuando necesitamos definir un objeto con nombres de propiedades para mapear valores que existen en el scope actual con el mismo nombre. Si tenemos una variable llamada PI y queremos que obj también tenga una propiedad llamada PI, con el mismo valor, en lugar de escribir el nombre dos veces, puede usar la sintaxis más corta omitiendo la segunda parte. Los objetos son muy populares en JavaScript. Se utilizan para administrar y comunicar datos, y el uso de estas caracteristicas hará que el código sea más corto y fácil de leer.