Ein Objekt gruppiert mehrere Werte zusammen:
const objektEins = { name: 'Hans', ['nach-name']: 'Wurst', alter: 27, geburtstag: { tag: 19, monat: 3, jahr: 1970 } }; console.log(objektEins); console.log(objektEins.name); console.log(objektEins['nach-name']); console.log(objektEins.alter); console.log(objektEins.geburtstag); console.log(objektEins.geburtstag.tag); console.log(objektEins.geburtstag.monat); console.log(objektEins.geburtstag.jahr); > {name: 'Hans', nach-name: 'Wurst', alter: 27, geburtstag: {tag: 19, monat: 3, jahr: 1970}} > Hans > Wurst > 27 > {tag: 19, monat: 3, jahr: 1970} > 19 > 3 > 1970
Neuer Wert in ein bestehendes Objekt hinzufügen:
objektEins.wohnort = 'Mainz'; console.log(objektEins); > {name: 'Hans', nach-name: 'Wurst', alter: 27, geburtstag: {tag: 19, monat: 3, jahr: 1970}, wohnort: 'Mainz'} > Mainz
Ein Wert aus einem Objekt löschen:
delete objektEins.wohnort; console.log(objektEins); > {name: 'Hans', nach-name: 'Wurst', alter: 27, geburtstag: {tag: 19, monat: 3, jahr: 1970}}
Funktionen in Objekten → Methoden
const objektEins = { name: 'Hans', alter: 27, methodeEins: function funktionEins() { console.log('Funktion im Objekt'); } }; console.log(objektEins); console.log(objektEins.name); console.log(objektEins.alter); console.log(objektEins.methodeEins); objektEins.methodeEins(); > {name: 'Hans', alter: 27, methodeEins: ƒ} > Hans > 27 > ƒ funktionEins() { console.log('Funktion im Objekt'); } > Funktion im Objekt
console.log(typeof Math); console.log(typeof Math.sin); > object > function
Allgemein bei return:
predicate ?
consequent-expression :
alternative-expression
predicate: x >= 0
consequent-expression: x
alternative-expression: -x
function abs(x) { return x >= 0 ? x : - x; }
p1, p2, … pn: Prädikate
e1, e2, … en: Ausdrücke
final-alternative-expression: letzter Ausdruck fall alle anderen nicht zutreffen.
p1 ?
e1 :
p2 ?
e2 … :
pn ?
en :
final-alternative-expression
function abs(x) { return x > 0 ? x : x === 0 ? 0 : -x; }
expression1 &&
expression2 → und
entspricht: expression1 ?
expression2 :
false
> function test_zahl(z){ return z>0 && z<11 ? z : console.log("falsch")} > test_zahl(2) 2 > test_zahl(22) falsch
> function test2_zahl(z){ return z>0 ? z<11 : console.log("falsch")} > test2_zahl(2) true > test2_zahl(22) false > test2_zahl(-2) falsch
expression1 ||
expression2 → oder
entspricht: expression1 ?
true
:
expression2
!
expression → nicht (negation)