>> [Daqq tal-mużika]
>> SPEAKER 1: Well, aħna qegħdin hawn, l-aħħar P sett fl CS50.
Nifraħ yourselves milli jkollhom wasal s'issa peress ewwel bonjour tiegħek
Dinjiet u stampar piramidi għall Mario.
Inti għamilt websajt aħħar ġimgħa.
U aħna qed tmur li jkun qed jagħmel xulxin din il-ġimgħa, wieħed li jippermetti li inti
sewqan madwar il-kampus Harvard, picking up membri tal-persunal CS50, u
jġibhom lura għall tagħhom djar residenzjali.
>> Issa aħħar ġimgħa ħdimna fil PHP, lingwa server sekondarji.
Għal dan is-sett P, aħna qed jkollna introdotti li JavaScript, li huwa
lingwa naħa tal-klijent.
Mela ejja tagħti ħarsa lejn uħud mill- kodiċi ta 'distribuzzjoni li mogħtija lill
inti għal dan is-sett P.
>> Fil-folder JavaScript, se jkun hemm jkun mazz ta 'JavaScript fajls.
Hemm buildings.js, li fih firxa tal-bini madwar Harvard
kampus, bl-informazzjoni tagħhom u l-pożizzjoni.
Houses.js firxa ta 'Harvard djar residenzjali, bil tagħhom
latitudnijiet u lonġitudnijiet.
Passengers.js fih firxa tal-passiġġieri -
il-membri tal-persunal CS50 -
li inti ser tkun li tressaq lura lejn djar residenzjali tagħhom.
>> Math3D.js, li fih ħafna ta ' funzjonijiet li għandhom x'jaqsmu mal-moviment.
Jekk int matematikament istess fehma, imbagħad I welcome inti tagħti ħarsa.
Imma inti m'għandekx bżonn li wieħed jifhem kollox fil hemmhekk.
Shuttle.js, li jittratta moviment tal-shuttle tal.
U index.html huwa l-home page fejn kollox jiġri, verament, fejn il-
utent huwa interazzjoni mal-sit.
>> Service.css hija l-karta tal-istil CSS, li, minbarra l-Twitter
Librerija bootstrap, kontrolli kif jistenna index.html.
U allura aħna wkoll ikollhom service.js, li fih il-funzjonijiet ta 'servizz għall-
l-shuttle.
U hawnhekk fejn int ser tkun timla xi wħud mill-li dos.
>> Issa ejja tagħti ħarsa lejn oġġetti u arrays assoċjattiva fl JavaScript,
li għal finijiet u effetti kollha huma interkambjabbli.
Jekk jien ridt li tagħmel oġġett varjabbli imsejħa wand, nixtieq
jiddikjaraha.
U ġewwa dawk braces kaboċċi nixtieq jispeċifikaw il-qalba hija Unicorn.
L-injam huwa ċirasa.
U t-tul huwa ta '13.
>> Issa I jistgħu wkoll aċċess valuri ta 'oġġetti li jużaw
notazzjoni firxa assoċjattiva.
Qalba indiċi So wand, I tista 'tistabbilixxi li ugwali għal Unicorn, jew
jivverifika li, jekk għandi bżonn.
Jew I jistgħu jużaw l-operatur dot.
Wand dot injam ugwali taċ-ċirasa, u l-bqija, u ibqa 'sejjer hekk.
Allura inti tara li arrays assoċjattiva u oġġetti fl JavaScript ser ikunu
interkambjabbli, u se jaqgħu fil pjuttost handy.
>> Imbagħad naraw firxa ta 'bini fil buildings.js.
Għal darb'oħra, firxa ta 'oġġetti.
Jekk jien ridt li jagħmlu firxa ta 'l-aħjar bini fuq Harvard kampus, allura
I jagħmilha kif ġej.
Bl-użu dan l-oġġett notazzjoni, fejn I jaħżnu l-għeruq, l-isem, l-indirizz,
latitudni, lonġitudni u għal kull oġġett bini wieħed.
>> Ejja malajr nitkellmu dwar varjabbli fl JavaScript.
Bħal PHP, JavaScript varjabbli huma dgħajjef jew laxk ittajpjat.
Biex jinħoloq varjabbli lokali, inti prefiss l-isem varjabbli mal-V-A-R, var.
>> Issa fl JavaScript, il-funzjonijiet se jillimita l-ambitu ta 'varjabbli.
Mela jekk għandek varjabbli lokali fi ħdan , funzjoni funzjonijiet allura oħra
ma jistgħux ikollhom aċċess għaliha.
Iżda b'differenza C, loops u kundizzjonijiet ma jillimita l-ambitu ta 'varjabbli.
>> Għalhekk anki jekk inti tiddikjaraha ġewwa ta ' kundizzjoni, il-funzjoni kollha se
jkollhom aċċess għaliha.
Issa mingħajr var, il-varjabbli se jkun globali.
Mela jekk inti biss tiddikjara l-isem u assenjat valur, allura dak il-varjabbli
se jkun fattur varjabbli globali fl JavaScript.
>> Issa fid-djar, għandna assoċjattiva firxa ta 'oġġetti tat-tip house, fejn
kull dar huwa biss latitudni u lonġitudni.
Imbagħad għandna l-passiġġieri array, li hija array
tat-tip oġġett passiġġieri.
Allura kull passiġġier għandu username, isem, u dar.
Avviż li jien jaraw tat-tip passiġġieri, li verament ifisser biss
li kull oġġett għandu l- istess par valur ewlieni.
Allura kull oġġett ta 'tip passiġġier għandu isem l-utent, l-isem, u dar.
>> Allura dak li għandna bżonn li jagħmlu għall-P-sett?
Well, għandna bżonn li jippermettu lill-utenti li pick up membri tal-persunal, li jintwerew kollha
il-membri tal-persunal li bħalissa huma fil- shuttle tagħna, u biex qatra minnhom off.
U allura aħna ser jitkellmu wkoll dwar extra karatteristiċi li jistgħu jiġu implimentati għal
l-shuttle P sett.
>> Imma ejja nitkellmu dwar Pickup ewwel.
L-uċuħ tal-persunal CS50 kienu mħawla kollha fuq il-kampus, fejn kull
wiċċ hija implimentata bħala trade post fuq l-earth 3D, u bħala
markatur fuq il-mappa 2D.
Allura meta l-utent klikks l-Pickup buttuna, irridu żid qrib
passiġġieri fil-shuttle.
U aħna rridu wkoll biex jitneħħew il-post tagħhom jimmarkaw mid-dinja, u neħħi tagħhom
markatur minn mappa, li jindika li dawn qed fil-shuttle tagħna issa.
>> Allura kif nistgħu jiskopru jekk il-passiġġieri huma fil-firxa ta 'shuttle tagħna?
Ukoll, id-distanza funzjoni -
hekk shuttle dot distanza, li jgħaddi fil- il-latitudni u lonġitudni, se
jikkalkulaw id-distanza mill-kurrent pożizzjoni tal-shuttle għall-
punt li inti tispeċifika ma 'dak mogħtija latitudni u lonġitudni.
Allura inti tista 'tuża dan biex tikkalkula l- distanza mill-shuttle għall-
passiġġieri.
>> Imma kif tkun taf fejn il-passiġġieri huma?
Ukoll, li fejn aħna ser ikollhom jeditjaw il-funzjoni timla.
Timla postijiet kollha tal-membri tal-persunal u l-passiġġieri fid-dinja,
u fil-mappa, iżda ma jaħżnu post tagħhom.
Allura forsi inti jista 'jaħżen tagħhom poġġi marki u markers
f'xi firxa globali.
>> Issa hemm diġà firxa globali ħażna ta 'informazzjoni mill-passiġġieri.
Il-ħwienet passiġġieri array kull l-isem tal-passiġġier u d-dar tagħhom.
Allura forsi inti tista 'żżid ftit parametri hemm biex l-oġġetti tal-passiġġieri.
>> Biex tgħinna jiskopru l-passiġġieri fil-firxa ta 'shuttle tagħna, ejja
loop kollha permezz tal-passiġġieri fil-firxa passiġġieri.
A għall-loop fil JavaScript tista 'tidher xi ħaġa bħal din, simili ħafna għal
dawk loop fil C. Jew nistgħu jużaw alternattiva għall-istruttura loop.
>> Għal i var fil-firxa, fejn I xorta se tkun l-indiċi.
Imma inti m'għandekx bżonn li jispeċifikaw il-firxa dot tul
kundizzjoni, ui plus plus.
Post ta 'kull passiġġier huwa mogħtija mill-marka post tagħhom.
>> Iżda l-marka post ma jkunx l- latitudni u l-lonġitudni.
Għandna li jaċċedu għal dawk il-parametri minn jkollna l-ġeometrija, bl-użu get
ġeometrija dwar it-trade post.
U mbagħad darba għandna l-ġeometrija, jkollna jew il-latitudni jew l-
lonġitudni, jużaw dawk il-funzjonijiet.
>> Allura issa nafu kif jiskopru jekk passiġġieri huma fi ħdan
firxa ta 'shuttle tagħna.
Ladarba għandna dawn il-passiġġieri, aħna ser tixtieq iżżid xi passiġġieri li huma
f'dik il-medda.
Aħna rridu li jippermettulhom li ħops fuq, u tieħu siġġu fuq shuttle tagħna, iżda biss
jekk ikollna biżżejjed spazju għalihom.
>> Il-firxa sedili shuttle dot se jindikaw jekk sedili huma vojta, jew
li s f'dak is-sedil.
Mela jekk sedil ikun vojt, imbagħad dak is-sedil tkun nulla.
Allura jtenni fuq il-firxa sedili, verifika għall postijiet vojta, il-ħażna
passiġġieri fil dawk is-sedili sakemm inti m'għandhom l-ebda sedili aktar vojta.
U sfortunatament, xi passiġġieri oħra se jkollhom għalfejn jistennew l-
ħin li jmiss l-shuttle jiġi madwar.
>> Ladarba jaslu fuq il-shuttle, aħna ser rridu biex jitneħħew marka post tagħhom, li
huwa ritratt tagħhom fid-dinja 3d.
Jekk jien ridt li tneħħi marka post p, allura nixtieq nikseb kollha tal-karatteristiċi
minn earth tiegħi, mill-Dinja Google, u mbagħad neħħi dak il-post speċifiku
marka billi tuża l-funzjoni removeChild.
Imbagħad fl-aħħar, ejja tneħħi l-markatur, l-ikona fuq il-mappa 2D għal kwalunkwe
passiġġieri li aħna picking up.
Biex tneħħi marker, m, allura jien ser biss tesegwixxi m dot null setMap.
Agħmel dan għal kull passiġġier fil-firxa, u inti ħadthom lest Pickup.