javascript - ES6 objektdestrukturering standardparametere
Jeg prøver å finne ut om det finnes en måte å bruke objekt-destructuring av standardparametere på uten å bekymre meg for at objektet er delvis definert. Vurder følgende:
(function test({a, b} = {a: "foo", b: "bar"}) {
console.log(a + " " + b);
})();Når jeg kaller dette med {a: "qux"}, for eksempel, ser jeg qux undefined i konsollen når det jeg egentlig ønsker er qux bar. Finnes det en måte å oppnå dette på uten å manuelt sjekke alle objektets egenskaper?
Svar #1
Ja. Du kan også bruke "defaults" i destrukturering:
(function test({a = "foo", b = "bar"} = {}) {
console.log(a + " " + b);
})();Dette er ikke begrenset til funksjonsparametere, men fungerer i alle destruktureringsuttrykk.
