Podemos ignorar un valor mientras destruimos una lista:
[a,,...rest] = [1,2,3,4] //2 is ignored here console.log(a); // 1 console.log(rest); // [3,4]¿Podemos hacer algo similar para los diccionarios? Lo intenté, pero da error:
({ a, , c} = { a: 10, b: 20, c: 30 }); //Unexpected token ', /* I was expecting a to get assigned 10 and c to get assigned 30 */¿Es simplemente imposible hacer lo mismo con los diccionarios? En caso afirmativo, ¿por qué tal decisión de diseño de lenguaje? ¿O es solo la incapacidad del analizador?
Aquí está cómo hacerlo:
({a,c} = { a: 10, b: 20, c: 30 }) console.log(a) console.log(c) El primero funciona de esa manera porque es una extensión al final.
El segundo lo ve como una coma final.
Puedes hacer eso.
({ a, c} = { a: 10, b: 20, c: 30 }); console.log(a); console.log(c);Sí, puede ignorar la clave mientras destruye los diccionarios/objetos como se muestra a continuación:
( { a, ...remObj} = { a: 10, b: 20, c: 30 }); console.log(a, ' ',remObj);