Contents
Template Literals
> name='Martin'
'Martin'
> surName='Büchner'
'Büchner'
> console.log(`Mein Name ist ${name} ${surName}.`);
Mein Name ist Martin Büchner.
undefined
>
Spread Operator / Destructuring
Array zu Einzelparameter
> nameArr = ['Hans', 'Müller'];
[ 'Hans', 'Müller' ]
> [vorname, name] = nameArr;
[ 'Hans', 'Müller' ]
> vorname
'Hans'
> name
'Müller'
//Auf Funktion anwenden:
> function showName2([vorname, name]){
... console.log(`Ich heisse ${name} ${vorname}.`);
}
undefined
> showName2(nameArr);
Ich heisse Müller Hans.
undefined
>
//Geht so nicht:
> function showName(name, vorname){
... console.log(`Ich heisse ${name} ${vorname}.`);
}
undefined
> showName(nameArr);
Ich heisse Hans,Müller undefined.
undefined
Objekt zu Einzelparametern
> person1 = {
... name : 'Van Gough',
... firstName : 'Vincent'
... };
{ name: 'Van Gough', firstName: 'Vincent' }
>
> let {name, firstName} = person1;
undefined
> name
'Van Gough'
> firstName
'Vincent'
//Ohne const, let geht es nicht:
> {name, firstName} = person1;
{name, firstName} = person1;
^
Uncaught SyntaxError: Unexpected token '='
//Fraglich ist für mich, wozu das dient, denn die Variablen lassen sich nur einmal zuordenen:
> const {name, firstName} = person1;
Uncaught SyntaxError: Identifier 'name' has already been declared
> let {name, firstName} = person1;
Uncaught SyntaxError: Identifier 'name' has already been declared
> undef name
Einzelparameter zu Array
Variadische Funktion (Var Args)
> function variadischeFunktion(...liste){
... for(i of liste){
..... console.log(i);
..... }
... }
undefined
>
> variadischeFunktion('Frühling','Sommer','Herbst','Winter')
Frühling
Sommer
Herbst
Winter
undefined
>
Einzelparameter zu Objekt
let name = 'Schutter';
let vorname = 'Heinz';
let person = {name, vorname};
> person
{ name: 'Schutter', vorname: 'Heinz' }
Rest Parameter
> arr1 = ['Karl', 'Gutenberg', 'Hofstr. 77', '3000', 'Bern'];
[ 'Karl', 'Gutenberg', 'Hofstr. 77', '3000', 'Bern' ]
> [vorname, name, ...adresse] = arr1;
[ 'Karl', 'Gutenberg', 'Hofstr. 77', '3000', 'Bern' ]
> name
'Gutenberg'
> vorname
'Karl'
> adresse
[ 'Hofstr. 77', '3000', 'Bern' ]
>