Hallo!
Man betrachte folgenden Code:
Wieso wird auf die Eigenschaft "name" ohne den Unterstrich zugegriffen? Eine Eigenschaft "name" ist doch gar nicht definiert. Nur "_name".
Grüße, getOwnPropertyDescriptor
Update: Okay, die Getter-Funktion "name" ist es. Aber wieso lautet dann die zweite Ausgabe des Skripts "Schrödinger programmiert Java"? Es gibt keinen Befehl
Man betrachte folgenden Code:
Code:
const item = { _name: 'Schrödinger programmiert Java', _price: 44.90, _author: 'Philip Ackermann', _isbn: '978-3-8362-7272-8', set name(newName) { if(typeof newName === 'string') { console.log('Neuen Namen setzen'); this._name = newName; } else { throw new TypeError('Name muss eine Zeichenkette sein.') } }, get name() { console.log('Namen zurückgeben'); return this._name; } } console.log(item.name); item.name = 'Schrödinger programmiert Java - das etwas andere Fachbuch';
Grüße, getOwnPropertyDescriptor
Update: Okay, die Getter-Funktion "name" ist es. Aber wieso lautet dann die zweite Ausgabe des Skripts "Schrödinger programmiert Java"? Es gibt keinen Befehl
Code:
console.log(item._name)
Comment