Parámetros predeterminados de desestructuración de objetos ES6

Resuelto user3019273 asked hace 10 años • 1 respuestas

Estoy tratando de descubrir si hay una manera de utilizar la desestructuración de objetos de los parámetros predeterminados sin preocuparme de que el objeto esté parcialmente definido. Considera lo siguiente:

(function test({a, b} = {a: "foo", b: "bar"}) {
  console.log(a + " " + b);
})();
Expandir fragmento

Cuando llamo a esto con {a: "qux"}, por ejemplo, veo qux undefineden la consola cuando lo que realmente quiero es qux bar. ¿Hay alguna manera de lograr esto sin verificar manualmente todas las propiedades del objeto?

user3019273 avatar Oct 27 '14 04:10 user3019273
Aceptado

Sí. También puede utilizar "valores predeterminados" en la desestructuración:

(function test({a = "foo", b = "bar"} = {}) {
  console.log(a + " " + b);
})();
Expandir fragmento

Esto no se limita a los parámetros de función, sino que funciona en todas las expresiones desestructurantes.

Bergi avatar Oct 26 '2014 21:10 Bergi