Object: entradas
Una forma de crear objetos es a partir de sus componentes mediante expresiones literales:
- directamente mediante expresiones de asignación: propiedad : valor
- usando una lista de pares de cadenas: [nombre de propiedad, valor de propiedad]. Estos pares se denominan entries.
El método Object.fromEntries(), permite crear un objeto a partir de estos pares propiedad:valor, a partir de entries que se le pasan como argumento..
Las entries pueden ser una Array, un Map un Set o en general cualquier objeto iterable.
En este ejemplo se ve como crear un objeto por ambos caminos.
var coche = {marca : "Fiat", modelo: "Stylo", color : "rojo", tiempo : 5};
var lista = [["marca","Fiat"], ["modelo","Stylo"], ["color", "rojo"], ["tiempo", 5]];
coche =Object.fromEntries(lista);
De la misma manera con el método Object.entries() es posible recuperar una lista con los pares formados por el nombre de la propiedad y su valor.
var pares =Object.entries(coche);
console.log(pares) ;
Tendría un array en el que cada elemen to es un par clave:valor. En el ejemplo sería un array de 4elementos, cada uno un par clave:valor:
[ ["marca","Fiat"], ["modelo", "Stylo"] ,["colo","rojo"],["tiempo", 5}.
En las entries pueden incluirse también métodos, no solo tipos de datos primitivos
var pares =[["base", 0],["altura",0],["area", function(){return this.base*this.altura}]];
var cuadro = Object.fromEntries(pares);
cuadro.base = 10;
cuadro.altura = 5;
console.log(cuadro.area()); //50