[Intro] Javascript Classes Flashcards

1
Q

Was ist eine Klasse in Javascript?

A
  • Objects sind viele Daten über ein Ding
  • Objects sind Templates für etwas das man immer und immer wieder erstellen wird mit geteilten Keys und Methoden
  • Damit die DRY-Regeln verletzten benutzt man Klassen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wie wird eine Funktion genannt, die ein neues Objekt zurückgibt?

A
  • Klassen Kontruktor

- Das Object wird dann zur Klasse

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Welchen Vorteil bieten Klassen gegenüber Objects?

A

-Geteilte Key Namen und VIELES mehr

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Sind Klassen in Javascript wie in Java?

A

Nicht ganz.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wie sehen zwei Objects entgegen einer Klasse in Javascript aus?

A
let userDan = {
name : 'Sascha',
password: 'test123'
}
function User(name, password) {
//let user = {
//name: name,
//password: password
//}
//return user
//}

this.name: name
this.password: password
this.saysHello: function(){
return ‘Hello’ + this.name + ‘!’
}
}

let userSascha = User('Sascha', 'test123')
console.log(userSascha.saysHello());
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Wie ist die Konvention für Namen von Klassen in Javascript?

A

-Beginnen mit einem Uppercase Buchstaben

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was macht das new Keyword?

A
  • Das this Keyword wird zu einem neuem Objekt gesetzt

- Am Ende wird das neue Objekt returned

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wie findet man heraus zu welchem Objekt this referenziert, wenn man sich unsicher ist?

A

-Gucken wo die Methode gecalled wird und das Object welches links for dem Punkt steht. Auf dieses Object bezieht sich this.
userSara.saysHello(); //useSara ist this

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wozu werden Klassen genutzt?

A

-Klassen werden als ein Template genutzt um eine Menge an Objekten zu erschaffen, welche alle das gleiche Muster an Daten/Eigenschaften besitzen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was ist der Unterschied in der Objekterzeugung zwischen Klassen und Prototypes?

A

-Klassen erstellen bei Verwendung jedes Mal ein neues Objekt und damit auch jedes Mal neue Funktionen des Objektes. Bei vielen Projekten erzeugt man tausende Male die gleichen Funktionen, die sich nicht unterscheiden aber viel Speicher verbrauchen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was ist das Problem viele Objekte mit gleichen Funktionen durch den Einsatz von Klassen zu erzeugen?

A

-Es werden unnötig viele gleiche Funktionen erzeugt und Speicher belastet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was erlaubt ein Prototype?

A
  • Jeder Klasse ein Standard-Repository zu geben
  • Funktionen einer Klasse im Repository einzelnd gespeichert werden und damit die gleiche Funktion jedem Objekt gegeben werden.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Wie definiert man einen Prototype einer Klasse?

A

-Die Funktion aus einer Klasse herausnehmen und dem Objekt zurodnen mit:

Vehicle.prototype.name= function(){
return num1 * num2
}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wie definiert man einen Prototype einer Klasse?

A

-Die Funktion aus einer Klasse herausnehmen und dem Objekt zurodnen mit:

Vehicle.prototype.name= function(){
return num1 * num2
}

AnimalClass.prototype.speak = function(){
return this.animal ‘ says ‘ this.sound
}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly