Zrozumienie słowa kluczowego this
Część sekcji Programowanie obiektowe ścieżki JavaScript w Coddy. Lekcja 3 z 56.
Słowo kluczowe this w JavaScript odnosi się do obiektu, który aktualnie wykonuje kod. Pozwala uzyskać dostęp do właściwości i metod bieżącego obiektu.
Zacznijmy od podstawowego obiektu:
let person = {
name: "John",
age: 30,
greet: function() {
console.log("Hello, my name is " + this.name);
}
};W tym przykładzie, gdy wywołujemy metodę greet:
person.greet();Wynik będzie następujący:
Hello, my name is JohnW tym miejscu this.name w metodzie greet odnosi się do właściwości name obiektu person.
Wyzwanie
Dodaj do obiektu gracza metodę o nazwie getStatus, która zwraca ciąg znaków zawierający imię gracza i jego poziom zdrowia, używając słowa kluczowego this.
Oczekiwany format wyjściowy:"Knight has 70 health"
Spróbuj swoich sił
const player = {
name: "Knight",
health: 100,
takeDamage: function(damage) {
this.health -= damage;
},
// TODO: Dodaj tutaj metodę getStatus, która zwraca ciąg znaków z imieniem gracza i jego stanem zdrowia
};
// Test
player.takeDamage(30);
console.log(player.getStatus()); // Powinno wypisać: "Knight has 70 health"Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Programowanie obiektowe
1Obiekty i słowo kluczowe this
Szybka powtórka: obiektyDodawanie metod do obiektówZrozumienie słowa kluczowego thisFunkcje konstruktoraSłowo kluczowe newWyzwanie podsumowujące7Dziedziczenie i słowo kluczowe extends
DziedziczenieRelacja „jest rodzajem”Słowo kluczowe extendsMetoda super()Dziedziczenie właściwości i metodWyzwanie podsumowujące10Polimorfizm
Czym jest polimorfizm?Nadpisywanie odziedziczonych metodUżywanie superWyzwanie podsumowujące13Kompozycja a dziedziczenie
Relacja „ma” a relacja „jest”Ograniczenia głębokiego dziedziczeniaTworzenie obiektów2Organizowanie kodu
Czym są moduły?Eksportowanie za pomocą exportImportowanie za pomocą importEksporty domyślne a nazwane5Enkapsulacja i dostęp
EnkapsulacjaPubliczne i prywatne pola klasyMetody prywatneWyzwanie podsumowujące8Organizowanie kodu OOP
Organizowanie klas w moduły11Projekt: Renderer kształtów
Konfiguracja: klasa Shape i eksportDziedziczenie klasy CircleNadpisywanie i metoda obliczania polaStatyczny licznik kształtów14System zarządzania biblioteką
Projektowanie bibliotekiKlasa Book z kompozycjąWalidacja autora książki9Metody i właściwości statyczne
Poziom klasy a poziom instancjiWłaściwości statyczneStatyczne metody pomocniczeWyzwanie podsumowującePoćwicz samodzielnie: Kompilator JavaScript online