Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Otokilkaprzykładównieprawidłowychakcji:
mnożenieliczbyilisty,
wywoływaniefunkcjinaliściełańcuchów,mimożetaknaprawdępotrzebujeona
listyobiektów,
wywoływaniemetodynaobiekcie,którywrzeczywistościniematejmetody,
importowaniemodułu,któryzostałusunięty.
Niektórejęzykiprogramowaniapróbują,jaknajlepiejpotrafią,radzićsobieztegotypu
błędami.Próbujądomyślićsię,doczegomiałaprowadzićnieprawidłowaakcja,ponie-
ważkażdyrobi,comoże,prawda?WeźmypoduwagęnastępującykodJavaScriptu:
3+[]
letobj:{}
obj.foo
//OtrzymujemyłańcuchH3”
//Otrzymujemyundefined
functiona(b){
returnb/2
}
a(Πz”)
//OtrzymujemyNaN
Jakwidać,zamiastzgłaszaćwyjątekwodpowiedzinapróbęwykonanianieprawidło-
wejakcji,JavaScriptpróbujezaradzićsytuacjiiunikaćwyjątków,gdyjesttomożliwe.
CzyJavaScriptchcepomóc?Napewno.Czyułatwiaszybkiezidentyfikowaniebłędów?
Raczejnie.
Aterazwyobraźmysobie,żeJavaScriptzgłaszawięcejwyjątków,zamiastpocichuradzić
sobiezestworzonąprzeznassytuacją.Moglibyśmyotrzymaćnastępująceinformacje
zwrotne:
3+[]
letobj:{}
obj.foo
//Błąd:Czynaprawdęchceszdodaćliczbęitablicę?
//Błąd:ZapomniałeśzdefiniowaćwobjwłaściwośćHfoo”.
functiona(b){
returnb/2
}
a(Πz”)
//Błąd:FunkcjaHa”oczekujeliczby,
//aprzekazałeśłańcuch.
Proszęnasźleniezrozumieć:gotowośćdorozwiązywanianaszychbłędówtokapitalna
cechajęzykaprogramowania(gdybybyłotomożliwenietylkowprzypadkuprogra-
mów).WJavaScripttafunkcjaoddalajednakmomentpopełnieniabłęduwkodzieod
momentudowiadywaniasięotym,żepopełniliśmybłądwkodzie.Atoczęstooznacza,
żeonaszymbłędziedowiadujemysiędopieroodinnychosób.
Wzwiązkuztympojawiasiępytanie,kiedydokładnieJavaScriptinformujenas,
żepopełniliśmybłąd.
2
|Rozdział1:Wprowadzenie