220
Rozdział 5.
Przekazywanie obiektów do funkcji
Jeszcze inne operacje z wykorzystaniem obiektów…
function prequal(car) {
if (car.mileage > 10000) {
return false;
} else if (car.year > 1960) {
return false;
}
return true;
}
Chcesz przekazywać do niej
obiekt samochodu.
Tutaj używasz zapisu z kropką, by
pobrać z parametru car wartości
właściwości mileage oraz year.
Tutaj sprawdzasz wartości
właściwości, porównując je ze z góry
określonymi wartościami.
Jeśli którykolwiek z warunków
dyskwalifikujących testowany samochód
zostanie spełniony, funkcja zwraca wartość
false. W przeciwnym razie zwracana jest
wartość true, która oznacza, że samochód
pomyślnie przeszedł wstępną kwalifikację.
var taxi = {
make: ”SieMoCorp”,
model: ”Taxi”,
year: 1955,
color: ”ĝöïty”,
passengers: 4,
convertible: false,
mileage: 281341
};
A teraz wypróbujemy tę funkcję. Będziemy przede wszystkim potrzebowali obiektu
samochodu. Co powiesz na taki?
Co myślisz o tym aucie? Czy
powinieneś uwzględniać tę
taksówkę w swoich poszukiwaniach?
Dlaczego tak lub dlaczego nie?
Oto funkcja.
Załóżmy, że chcesz znaleźć dobry samochód na okres pobytu w Sieciowicach.
Jakie są Twoje kryteria? Może takie:
wyprodukowany w roku 1960 lub wcześniej,
przebieg 10 000 km lub mniejszy.
Przy okazji chciałbyś wykorzystać swoje nowe umiejętności pisania kodu (i ułatwić sobie życie), dlatego też masz zamiar
napisać funkcję, która dokona za Ciebie wstępnej selekcji samochodów. Innymi słowy, jeśli samochód spełni kryteria,
funkcja zwróci wartość
true
; w przeciwnym razie samochód nie jest wart Twojej uwagi, więc funkcja zwróci wartość
false
.
Mówiąc nieco bardziej precyzyjnie, masz zamiar napisać
funkcję, która będzie pobierać obiekt samochodu jako parametr,
sprawdzać właściwości tego obiektu i zwracać wartość logiczną. Funkcja ta będzie działać na
dowolnych obiektach samochodów.
Przyjrzyjmy się tej funkcji.
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.