Obiekty JavaScript przypisują funkcję do właściwości
Szukałem i walczyłem z następującym przykładem:
var player1= {name: "Chris", score: 1000, rank: 1};
var player2= {name: "Kristofer", score: 100000, rank: 2};
function playerDetails(){
alert("The name of the player is "+ this.name + "."+ " His score is : "+ this.score + "and his rank : "+ this.rank);
}
player1.logDetails= playerDetails;
player2.logDetails= playerDetails;
player1.logDetails();
player2.logDetails();
Z tego co wiemplayer1.logDetails
jest właściwością player1 lub metodą player1. Nie mogę zrozumieć, w jaki sposób autor przypisuje właściwość do funkcji. Nie rozumiem też, dlaczego tak napisałbyś zamiast: player1.logDetails = playerDetails (); które próbowałem i nie działa.
Potem dzwoniplayer1.logDetails()
która jest funkcją, ale nigdzie nie zadeklarowana. (?)
Jeśli ktoś mógłby pomóc? Z góry dziękuję