Für ein Objekt x
Destrukturierung verschiedene Arten in JS
const x = {
a: 'foo',
b:() => { return 'bar')
}
Ist es möglich, x
denaturiert, sowohl a
und b
als Strings in einem einzigen Schritt zu bekommen?
{a, <something with b?>} = x
console.log(a, b) // 'foo bar'
Auf einer breiteren Anwendungsbereich, ich bin verwirrt, wie sauber
In der realen Welt in einem einzigen Objekt verschiedene Typen enthalten destrukturiert zu, ist a
ein Aufruf und b
ist ein verschachteltes Objekt
const x = {
a: c(), // returns an object
b: {
x: {...},
y:() => {...}
} // is an object
}
// is this even doable
{< some magic stuff >} = x
typeof a === typeof b //true
Strukturierung kann keine Funktionen aufrufen. – SLaks
Strukturierungszuweisungen sind ausschließlich für reguläre Objekte und Arrays gedacht, nicht für exotische Objekte. Darüber hinaus beinhaltet Destrukturierung weder eine implizite noch eine explizite Typkonvertierung. Der Typ des zugeordneten Wertes und der Typ der entsprechenden Objekteigenschaft sind immer gleich. Es ist ein mechanischer Prozess. – ftor