[Musika jotzen] HIZLARIA 1: Beno, hemen gaude, CS50 azken P multzo. Zorionak zuei izatea beraz, orain arte etorri geroztik zure lehen kaixo mundu eta inprimatzeko Mario piramideak. Joan den astean web orri bat egin duzu. Eta zu be beste bat egiten joan gara aste honetan, bat aukera ematen dizu Harvard campusean inguruan gidatzeko, biltzea sortu CS50 taldekideak, eta ekartzen atzera beren egoitza-etxeak. Orain azken astean PHP lan egin dugu, zerbitzari albo hizkuntza bat. P multzo honetan, ohitu gara sartu Ikusteko Javascript-a, hau da, bat bezero alboko hizkuntza. Beraz, dezagun, batzuk begirada bat hori emandako banaketa-kodea P multzo honetan duzu. JavaScript karpetan, egongo da JavaScript fitxategi mordo bat izango da. Ez dago buildings.js, horrek dauka baten Harvard inguruan eraikin sorta campusean, beraien informazioarekin eta posizio. Houses.js Harvard array bat da egoitza-etxeak, beren latitude eta longitudeak. Passengers.js bat dauka bidaiari sorta - CS50 taldekideak - duzula behar hori itzultzea izango den beren egoitza-etxeak. Math3D.js, asko dituen funtzio mugimendua egin. Oraindik matematikoki zabaltasuna bada, ondoren, begirada bat hartu ongietorria dut. Baina ez duzu ulertzen han dena. Shuttle.js, hori jorratzen anezka mugimendua. Eta index.html etxeko orria da non dena gertatzen da, benetan, non Erabiltzaileak gune erlazionatzerakoan da. Service.css CSS estilo-orria da, horrek, Twitter gain Bootstrap liburutegia, kontrolak nola index.html begiradak. Eta orduan ere izan dugu service.js, zein zerbitzuaren funtzio dauka egiteko anezka. Eta hemen, non ari zaren izango da the dos behar batzuk bete. Dezagun orain objektu begirada bat eta JavaScript elkartze-array, horrek xede guztietarako truka dira. Objektu baten aldagai bat egin nahi badut makila bat deitu, nuke deklaratzen da. Eta giltza kizkur nuke horiek barruan zehaztu muina unicorn da. Zura gerezi da. Eta luzera 13 da. Orain dut balioak ere sar daitezke erabiliz objektuen Elkartze-array idazkera. Beraz makila indizea core, ezarri ahal izango dut duten unicorn berdina, edo egiaztatu, behar badut. Edo dot operadorea erabili ahal izango dut. Makila dot egurra berdinen gereziondoak, eta abar, eta abar. Beraz, ikusi duzun elkartze-array eta JavaScript objetu izango da truka, eta borondate nahiko erabilgarri etorriko. Ondoren eraikin array bat ikusiko dugu buildings.js in. Berriz ere, objektuen array bat. Onenak array bat egin nahi badut Harvard campuseko eraikinak, eta gero Egiteko honela nuke. Objektu idazkera hau erabiliz, non Gordetzen dut erro, izena, helbidea, latitude eta longitude bakoitzerako Eraikin objektu bakar. En azkar aldagai buruz hitz egin dezagun JavaScript. PHP, Javascript aldagai bezala ahulki edo baziren idatzi dira. Tokiko aldagai bat sortzeko, has duzu V-A-R, var Izen aldagaia. Orain JavaScript, funtzio izango aldagai esparrua mugatzeko. Beraz zaien tokiko aldagai bat izanez gero funtzio bat, eta gero beste funtzio ezin da atzitu. Baina C ez bezala, begiztak eta baldintzak ez aldagai baten esparrua mugatzeko. Baten barruan deklaratzen bada beraz, nahiz eta zuk baldintza, funtzio osoa izango da sarbidea. Orain var gabe, aldagaiaren globala izango da. Duzun izena deklaratzen hala bada besterik eta balio bat esleitzeko, ondoren, aldagai hori aldagai global bat izango da JavaScript. Orain etxe batean, elkartze bat dugu Etxe mota objektuak, array non etxe guztietan latitude bat besterik ez da eta longitude bat. Ondoren bidaiariak dugu array, horrek array bat da objektuaren mota bidaiarien neurtzen. Beraz, bidaiarien behin erabiltzaile izen bat du, izen bat eta etxe bat. Nabarituko motako dudala ikusten dut bidaiariak, eta horrek benetan esan nahi objektu bakoitza ditu bera funtsezko balioa bikotea. Beraz, mota bidaiarien objektu guztietan du erabiltzaile izen bat, izen bat, eta etxe bat. Beraz, zer egin behar dugu P multzoa alde? Beno, erabiltzaileei jaso ahal izateko behar dugu taldekideak gora, guztiak erakutsi taldekideak honako hauek direla gaur egun dauden gure anezka, eta horiek askatu off. Eta gero, gainera, dugu estra buruz hitz horretarako garatu daitekeen ezaugarri anezka P multzoa. Baina dezagun eztabaida bilketa buruzko lehen. CS50 langileen aurpegiak izan dira campus osoan zehar landatu, non bakoitzak aurpegia leku-marka gisa inplementatu 3D lurrean, eta gisa markatzailea 2D mapan. Erabiltzaileari bilketa sakatzen beraz, botoia, hurbileko gehitu nahi dugu anezka bidaiari. Eta, halaber, beren lekua kendu nahi dugu mundutik markatu eta kendu bere mapan egin markatzailea, adieraziz duten Oraindik gure anezka dute orain. Beraz, nola ez detektatu dugu bada bidaiari gure anezka eremuan daudela? Beno, funtzioa distantzia - beraz anezka dot distantzia, pasatzen latitude eta longitude, borondatea distantzia kalkulatzeko egungo hasita shuttle posizioa seinalatu zehaztu horrekin duzula Emandako latitude eta longitudea. Beraz, hau erabili ahal izango dituzu da kalkulatu du anezka distantzia egiteko bidaiari. Baina nola dakizu non bidaiariak dira? Beno, hori da, non nahi dizkizugu dute populatu funtzioa editatzeko. Populatu leku taldekideak guztia eta mundura bidaiariak, eta mapa bat gainditu du, baina ez du Bere kokapena gordetzeko. Beraz, agian gorde dezakezu bere jarri ikurrak eta markatzaileak array global batzuetan. Orain daude dagoeneko array globala da bidaiari baten informazioa gordetzeko. Bakoitzeko bidaiari array dendetan bidaiarien izen-abizenak eta bere etxea. Beraz, agian parametro batzuk gehitu ahal izango dituzu bidaiarien objektuak daude. Bidaiari guztiak detektatzen lagunduko digu gure anezka estalduran, dezagun begizta bidaiari guztietan barrena bidaiari array. JavaScript begizta bat bila liteke honen antzeko zerbait, oso antzekoa C. begizta horiek Edo bat erabili ahal izango dugu begizta egitura alternatiba. Var array i baterako, non I izango da oraindik indizea izan. Baina ez duzu behar den zehaztu array dot luzera baldintza, eta i plus plus. Bidaiari bakoitzaren kokapena da beren leku-marka emandako. Baina leku-marka ez da latitude eta longitudea. Parametro horien sartzeko egindako dugu geometria lortzean, get erabiliz leku-marka on Geometria. Eta gero, behin geometria dugu, bai latitude edo lortzean longitude, funtzio horiek erabiliz. Beraz, orain nola antzeman ala ez badakigu bidaiari barruan daude gure anezka sorta. Behin bidaiari horiek ditugu, dugu direla edozein bidaiari gehitu nahi sorta horren barruan. Hop horiek aukera nahi dugu, eta eserlekua hartu gure anezka, baina bakarrik beraientzat nahikoa gela dugu bada. Anezka dot eserleku array izango eserleku hutsik daude ala ez, edo adierazten nork eserlekua horretan da. Beraz, eserleku bat hutsik badago, orduan eserlekua dela nulua izango da. Beraz eserleku array zehar batetik bestera joateko, eserleku hutsik egiaztapena, gordetzeko eserleku horietan sartu bidaiari arte ez edozein eserleku gehiago hutsik izan. Eta, zoritxarrez, edozein beste bidaiariak hemen itxaron beharko hurrengoan anezka dator inguruan. Behin lortu anezka on dute, egingo nahi dugu beren leku-marka kentzeko, eta horrek beren argazkian 3D munduan da. Kentzeko leku-marka p a nahiko banu, ondoren, ezaugarri guztiak nuke nire lurretik, Google Earth-tik, eta ondoren, leku zehatz hori kendu markatu removeChild funtzioa erabiliz. Gero, azkenik, dezagun kendu markatzailea, 2D maparen edozein ikonoaren bidaiarien duten picking ari gara. A markatzailea, m kendu, eta gero egingo dut besterik exekutatu m dot setMap nulua. Egin hori gama barruan bidaiariak edozein, eta nik bilketa amaitu duzu.