230
Rozdział 5.
Dodawanie zachowań
Zachowuj się! Jak dodawać zachowania do obiektów?
Nie sądziłeś chyba, że obiekty służą jedynie do przechowywania liczb i łańcuchów znaków?
Obiekty są
aktywne. Obiekty mogą robić różne rzeczy. Psy nie spędzają życia, siedząc bez
ruchu… Psy szczekają, biegają, przynoszą patyki i podobnie powinny postępować obiekty
psów! Analogicznie, jeździmy samochodami, parkujemy je, cofamy, hamujemy… Zważywszy
na to wszystko, czego już się nauczyłeś w tym rozdziale, jesteś zapewne gotowy, by rozpocząć
dodawanie do swoich obiektów zachowań. Poniżej pokazaliśmy, jak to robić.
var fiat = {
make: ”Fiat”,
model: ”500”,
year: 1957,
color: ”szaroniebieski”,
passengers: 2,
convertible: false,
mileage: 88000,
drive: function() {
alert(”Brum wrrrr!”);
}
};
fiat.drive();
Aby wywołać funkcję — o, przepraszam — metodę
drive
, należy ponownie skorzystać
z zapisu z kropką; podajemy nazwę obiektu, w tym przypadku będzie to
fiat
, oraz nazwę
metody,
drive
, ale tym razem umieszczamy za nią parę nawiasów (dokładnie tak samo jak
w wywołaniu wszystkich innych funkcji).
Używamy znanego już zapisu
z kropką, by odwołać się do funkcji
w obiekcie fiat, dokładnie tak samo, jak
odwoływalibyśmy się do dowolnej innej
właściwości. Mówimy, że „wywołujemy
metodę drive obiektu fiat”.
Funkcjonalności możesz dodawać
do obiektu bezpośrednio,
w poniższy sposób.
I troszkę nomenklatury: zazwyczaj funkcje
umieszczane wewnątrz obiektów nazywamy
metodami. To jest powszechnie stosowany
obiektowy termin, określający funkcje
dostępne w obiektach.
Zwróć uwagę, że w definicji funkcji nie podaliśmy
nazwy — ograniczyliśmy się do samego słowa
kluczowego function oraz ciała funkcji. Nazwą tej
funkcji jest nazwa właściwości.
Sprowadza się to do zapisania we właściwości
definicji funkcji. Owszem, właściwości mogą też
być funkcjami!
A to są wyniki wywołania
metody drive obiektu fiat.
Get Programowanie w JavaScript Rusz głową! now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.