Los objetos literales en vienen con una variedad de métodos que hacen que trabajar con ellos sea mucho más sencillo. En esta publicación, vamos a explorar algunos de los más utilizados.
Object.keys(obj)
El método Object.keys() devuelve un array con las claves propias enumerables de un objeto.
Sintaxis
Object.keys(obj);
Parámetros que recibe
obj: El objeto del cual se van a obtener las claves.
Valor que retorna
Un array con las claves del objeto.
Ejemplo
En este ejemplo:
- El objeto
persontiene dos claves:nameyage. Object.keys(person)devuelve un array con estas claves.
Notas Adicionales
Object.keys()es útil para iterar sobre las claves de un objeto.
Object.values(obj)
El método Object.values() devuelve un array con los valores de las claves propias enumerables de un objeto.
Sintaxis
Object.values(obj);
Parámetros que recibe
obj: El objeto del cual se van a obtener los valores.
Valor que retorna
Un array con los valores del objeto.
Ejemplo
En este ejemplo:
- El objeto
persontiene dos valores:ysnippet.txt1'John'30. Object.values(person)devuelve un array con estos valores.
Notas Adicionales
Object.values()es útil para iterar sobre los valores de un objeto.
Object.entries(obj)
El método Object.entries() devuelve un array de arrays, cada uno conteniendo un par clave-valor del objeto.
Sintaxis
Object.entries(obj);
Parámetros que recibe
obj: El objeto del cual se van a obtener las entradas.
Valor que retorna
Un array de arrays, cada uno con un par clave-valor.
Ejemplo
En este ejemplo:
- El objeto
persontiene dos pares clave-valor:ysnippet.txt1name: 'John'.snippet.txt1age: 30 Object.entries(person)devuelve un array con estos pares clave-valor.
Notas Adicionales
Object.entries()es útil para iterar sobre las entradas de un objeto.
Object.assign(target, ...sources)
El método Object.assign() copia las propiedades enumerables de uno o más objetos fuente a un objeto destino. Devuelve el objeto destino.
Sintaxis
Object.assign(target, ...sources);
Parámetros que recibe
target: El objeto destino.sources: Uno o más objetos fuente.
Valor que retorna
El objeto destino con las propiedades copiadas.
Ejemplo
En este ejemplo:
- El objeto
targetes.snippet.txt1{ a: 1 } - El objeto
sourcees.snippet.txt1{ b: 2, c: 3 } Object.assign(target, source)copia las propiedades desourceatarget.
Notas Adicionales
Object.assign()es útil para combinar múltiples objetos en uno solo.
Object.freeze(obj)
El método Object.freeze() congela un objeto, impidiendo que se añadan, eliminen o modifiquen propiedades.
Sintaxis
Object.freeze(obj);
Parámetros que recibe
obj: El objeto que se va a congelar.
Valor que retorna
El objeto congelado.
Ejemplo
En este ejemplo:
- El objeto
personse congela. - Aunque se intente cambiar la propiedad
age, no se modifica.
Notas Adicionales
Object.freeze()es útil para proteger un objeto de modificaciones.
Object.seal(obj)
El método Object.seal() sella un objeto, impidiendo que se añadan o eliminen propiedades, aunque las propiedades existentes todavía se pueden modificar.
Sintaxis
Object.seal(obj);
Parámetros que recibe
obj: El objeto que se va a sellar.
Valor que retorna
El objeto sellado.
Ejemplo
En este ejemplo:
- El objeto
personse sella. - La propiedad
agese puede modificar, pero no se puede eliminarname.
Notas Adicionales
Object.seal()es útil para proteger la estructura de un objeto mientras se permiten cambios en sus propiedades.
Object.create(proto, [propertiesObject])
El método Object.create() crea un nuevo objeto con el prototipo y las propiedades especificadas.
Sintaxis
Object.create(proto, [propertiesObject]);
Parámetros que recibe
proto: El objeto que será el prototipo del nuevo objeto.propertiesObject: Opcional. Un objeto cuyas propiedades se van a añadir al nuevo objeto.
Valor que retorna
Un nuevo objeto con el prototipo y propiedades especificadas.
Ejemplo
En este ejemplo:
- El objeto
prototiene un métodogreet. - El nuevo objeto
objcreado conObject.create(proto)puede usar el métodogreet.
Notas Adicionales
Object.create()es útil para crear objetos con un prototipo específico.
Object.defineProperty(obj, prop, descriptor)
El método Object.defineProperty() define una nueva propiedad en un objeto o modifica una propiedad existente y devuelve el objeto.
Sintaxis
Object.defineProperty(obj, prop, descriptor);
Parámetros que recibe
obj: El objeto en el que se va a definir la propiedad.prop: El nombre de la propiedad a definir o modificar.descriptor: El descriptor de la propiedad.
Valor que retorna
El objeto con la propiedad definida o modificada.
Ejemplo
En este ejemplo:
- El objeto
persontiene una propiedadnamedefinida. - La propiedad
nameno es modificable ().snippet.txt1writable: false
Notas Adicionales
Object.defineProperty()es útil para agregar o modificar propiedades con control sobre atributos como enumerabilidad, configurabilidad y capacidad de escritura.
