No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Regálate acceso ilimitado a todos los cursos por 1 año a precio especial de Navidad 🎄

Antes: $199

Currency
$149/año
regístrate

termina en:

16D
14H
45M
26S

ES6: object literals

12/38
Recursos

Los objetos literales consiste en crear objetos a partir de variables sin repetir el nombre. Antes de ES6, para crear un objeto a partir de variables consistía en la siguiente manera:

const nombre = "Andres"
const edad = 23

const objeto = {
    nombre: nombre, 
    edad: edad
}

objeto // { nombre: 'Andres', edad: 23 }

Cómo utilizar objetos literales

Con los parámetros de objeto puedes obviar la repetición de nombres, JavaScript creará la propiedad a partir del nombre de la variable con su respectivo valor.

const nombre = "Andres"
const edad = 23

const objeto = {nombre, edad}

objeto // { nombre: 'Andres', edad: 23 }

El resultado es el mismo, pero sin la necesidad de repetir palabras. Puedes combinarlo con variables que su propiedad tiene un nombre diferente.

const nombre = "Andres"
const edad = 23
const esteEsUnID = 1

const objeto = {
    nombre, 
    edad,
    id: esteEsUnID
}

objeto // { nombre: 'Andres', edad: 23, id: 1 }

Contribución creada por Andrés Guano (Platzi Contributor).

Aportes 13

Preguntas 1

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Les dejo un ejemplito que recordé con esto

function Dog(name, age) {
    this.name = name;
    this.age = age;
    this.barking = function() { return `${this.name} says WOOF`}
}
const Kira = new Dog("Kira", 3)
Kira.barking();

Output: ‘Kira says WOOF’

Resumen!
Object Literals
Una de las mejoras agregadas en ECMA 6 al trabajar con objetos es la representación de la asignación.
Enhanced object literals

El siguiente ejemplo muestra dos formas para expresar una asignación, la segunda, simplificada.

function newUser(user, age, country){ return { user:user, age: age, country: country } }

// esto es lo mismo que decir

function newUser(user, age, country){ return { user, age, country, } }

Una manera de evitar el orden de los parámetros es mediante RORO - Recibir Objeto, Retornar Objeto:

Los parámetros se pasan dentro de un objeto y tenemos que retornar otro objeto que haga referencia a esas propiedades.

Ahora vean lo que pasa si hago dos objetos pero uno a uno de ellos pasándole los parámetros en desorden

Si notan Luis recibe los parametros en otro orden pero igual funciona

Un pequeño typo, es enhanced 👀

// enhanced object literals

Hola [email protected]
ES6

  • Object literals
function newUser(user, age, country, uId) {
    return {
        user,
        age,
        country,
        id: uId
    }
}

console.log(newUser("bndx", 24, "COL", 1));

Muy buenos ejemplos es uno de los mejores Curso que he tomado.

function newUser(name, age, nikcname) {
    return {
        name,
        age,
        nick: nikcname // Puedes combinarlo con variables que su propiedad tiene un nombre diferente
    }
}

console.log(newUser("dario", 38, "thunder"));

Con estas clases siempre me pregunto si se pueden utilizar otras implementaciones, y la respuesta casi siempre es sí.
En efecto se puede utilizar el object literals con un rest operator

Repositorio github del profe → Archivo manejado en la clase:

Me da ansiedad que no uses los atajos

Hola chicos: comparto el codigo de la clase:

//--------------enahced OBJECT LITERALS----------

function newUser(user, age, country, uID){
    return{
        user: user,
        age,
        country,
        id: uID
    }
}

console.log(newUser("gndx", 34, "MX",1));

@orlandogonzales24