Funkcije i objekti u programskom jeziku Java Script
Funkcije i objekti u programskom jeziku Java. Script Autor: Marija Đorđević
Sadržaj Uvod Funkcije Ugrađene funkcije Korisničke funkcije Objekti Zadaci sa rešenjima
Uvod Šta je Java. Script? Nastanak Razvoj i verzije Gde se koristi? Implementacija
Šta je Java. Script? Java. Script je najpopularniji skript jezik na internetu, i funkcioniše na svim poznatijim pregledačima, kao što su Internet Explorer, Mozilla, Firefox, Netscape, Opera. Java. Script se koristi na većini internet stranica kako bi se poboljšao dizajn, proverile forme, detektovali pregledači, kreirali kolačići (cookies), itd. Dizajniran je da bi se dodala interaktivnost HTML stranama. To je skript jezik (jednostavan programski jezik), koji se sastoji od linija koda koji može da se izvršava. Najčešće se kod direktno ugrađuje u HTML strane. Ovo je i interpreterski jezik (što znači da se izvršava bez prethodnog kompajliranja). Najvažnija korisnicima od svih osobina je da ovo nije licenciran jezik, već je svima besplatno dostupan za korišćenje.
Nastanak Programski jezik Java. Script je, u martu 1996. godine, razvio Brendan Eich. Tada je bio zaposlen u firmi Netscape (danas Mozilla). Prvobitno ime ovog programskog jezika je bilo Mocha, koje je izabrao Marc Andereessen, osnivač Netscape-a. Nakon samo pet meseci ime je promenjeno u Live. Script. U decembru iste godine programski jezik dobija ime Java. Script, koje zadržava sve do danas.
Zapamtite
Nastanak Novo ime ovog programskog jezika nije slučajno odabrano. Naime, programski jezik Java je u to vreme bio popularan, pa su osnivači u Netscape-u došli na ideju da i svom izumu daju slično ime. Ovo se pokazalo kao izuzetan marketinški trik, jer se za jezik Java. Script brzo pročulo. Dakle, jezici Java. Script i Java nisu isti, postoje neke sličnosti u sintaksi, ali ne više od toga. U osnovi, to su dva različita programska jezika, t. j. dva načina programiranja na internetu.
Razvoj i verzije
Razvoj i verzije U prethodnoj tabeli nije uključena verzija 1. 4, koja je razvijena za upotrebu isključivo na Netscape serveru, samim tim nama nije od značaja.
Implementacija Java. Script kod se na HTML stranicu dodaje unutar script etiketa.
Implementacija Java. Script kod se može preuzeti i iz spoljašnje datoteke naredbom src.
Funkcije Šta su to funkcije? Funkcije u Java. Script jeziku Ugrađene funkcije Korisničke funkcije
Šta su to funkcije? Funkcija je blok koda koji neprimetno čeka. Izvršavanje funkcije se događa samo onda kada je eksplicitno pozovemo. Najveća korist funkcija se ogleda u tome što skraćuju kod, jer se mogu pozivati više puta, odnosno ne mora se isti kod pisati iznova. Time se, takođe, skraćuje i vreme koje je potrebno za izradu. Najčešće se koriste kod zadataka koji se često ponavljaju.
Funkcije u Java. Script jeziku Funkcija se ne izvršava pri učitavanju stranice, zato se preporučuje da svaka funkcija bude definisana u okviru head etikete, a možemo je pozivati bilo kada i bilo gde u dokumentu. Obično se poziva u okviru body etikete, iz tela HTML dokumenta, ali takođe je mogu pozivati i druge funkcije u okviru dokumenta. Postoje dve vrste funkcija ugrađene (primitivne) funkcije i korisničke funkcije (one koje sami definiv semo).
Funkcije u Java. Script jeziku Ovo je primer jedne funkcije. Ona je sačinjena od jedne korisničke funkcije, unutar koje se nalazi jedna ugrađena funkcija.
Ugrađene funkcije Postoji mnoštvo ugrađenih funkcija. Njih možete koristiti po potrebi, bez eksplicitnog definisanja. Njihova korist je višestruka, od ubrzavanja procesa programiranja sve do toga da je programerski kod jasniji i čitkiji. Navešćemo samo neke od njih, one koje imaju široku primenu i čestu upotrebu.
Funkcija alert Sačinjen je HTML dokument kao na slici: Sintaksa same funkcije je prikazana, navede se naziv funkcije, zatim zagrade, a unutar zagrada se nalazi tekst za ispis.
Funkcija alert Kada pokrenete ovu funkciju, u internet pretraživaču se aktivira iskačući prozor sa porukom: Tekst koji smo naveli za ispis se nalazi u opisu ovog prozora. Klikom na dugme „OK“ ili „X“ se zatvara ovaj prozor.
Funkcija confirm Sačinjen je HTML dokument kao na slici: Sintaksa same funkcije je prikazana, navede se naziv funkcije, zatim zagrade, a unutar zagrada se nalazi tekst za ispis.
Funkcija confirm Kada pokrenete ovu funkciju, u internet pretraživaču se aktivira iskačući prozor sa porukom: Tekst koji smo naveli za ispis se nalazi u opisu ovog prozora. Promenljivu „izaberi“ smo definisali kako bi smo sačuvali odgovor korisnika. Klikom na dugme „OK“ korisnik proseđuje vrednost true, dok klikom na dugme „Cancel“ prosleđuje vrednost false. Dugme „X“ ne definiše ni jednu vrednost, odnosno, ukoliko korisnik izabere ovo dugme, promenljiva izaberi dobija vrednost undefined.
Funkcija prompt Sačinjen je HTML dokument kao na slici: Sintaksa same funkcije je prikazana, navede se naziv funkcije, zatim zagrade, a unutar zagrada se nalazi tekst za ispis.
Funkcija prompt Kada pokrenete ovu funkciju, u internet pretraživaču se aktivira iskačući prozor sa porukom: Tekst koji smo naveli za ispis se nalazi u opisu ovog prozora. Tekst koji korisnik unese u prostor za to predviđen, klikom na dugme „OK“ sačuvaće u promenljivoj ime. Ukoliko korisnik izabere dugme „Cancel“ ili „X“, u promenljiva ime dobiće vrednost undefined.
Napomena Funkcije alert, confirm i prompt se mogu pozivati i na sledeći način: window. alert(); window. confirm(); window. prompt();
Funkcija write Sačinjen je HTML dokument kao na slici: Sintaksa same funkcije je prikazana, navede se naziv funkcije, zatim zagrade, a unutar zagrada se nalazi tekst za upis na internet stranicu.
Funkcija write Kada pokrenete ovu funkciju, u internet stranicu upisuje se sledeći tekst: Obavezno je da se ova funkcija poziva sa document. write();
Funkcija Date Sačinjen je HTML dokument kao na slici: Sintaksa same funkcije je prikazana, navede se naziv funkcije, a zatim zagrade. U promenljivoj datum sačuvali smo vrednost koju daje funkcija Date(); , a potom ćemo tu vrednost prikazati funkcijom alert();
Funkcija Date Kada pokrenete ovu funkciju, u internet pretraživaču se aktivira iskačući prozor sa porukom: Dakle, funkcija Date(); prosleđuje tačan dan, datum, vreme i vremensku zonu. (Funkcija je testirana 28. Novembra 2016. godine u 15: 03 časova)
Često korišćene metode Metode ćemo podeliti na osnovu objekata nad kojima se primenjuju: Numerički objekti String objekti Date objekti Matematičke metode
Metode nad numeričkim objektima
Metode nad string objektima
Metode nad Date objektima
Matematičke metode
Primeri upotrebe nekih metoda U nastavku ćete videti neke od načina za pozivanje i rad sa određenim metodama. Prvo će biti prikazan HTML dokument koji je sačinjen, a zatim, kada se pokrene taj dokument, odgovor internet pretraživača.
Primer 1
Primer 1
Primer 2
Primer 2
Primer 2 Unos je bio broj 15. Korisnik je izabrao dugme „Cancel“. Unos je bila reč abvg.
Korisničke funkcije su one koje sami definišemo. Funkcija treba biti opšta, da je možemo primeniti na što više slučaja, a opet dovoljno precizna kako bi sprovela našu misao u delo. Samostalno određujemo šta ćemo obuhvatiti u okviru funkcije, isprva to je instikt, a kasnije, poučeni iskustvom, donosimo ovakve odluke.
Definisanje funkcije Prilikom definisanja funkcije prvo stoji ključna reč function, zatim razmak, pa naziv funkcije, obične zagrade, pa vitičaste zagrade. U okviru običnih zagrada mogu, ali i ne moraju, da stoje ulazni argumenti (dodatne informacije koristi funkcija). U okviru vitičastih zagrada se nalazi telo funkcije, odnosno, naredbe koje funkcija izvršava.
Definisanje funkcije U zavisnosti od toga da li funkcije u telu sadrze naredbu return razlikujemo ih kao povratne (one koje vracaju neku vrednost), nepovratne (one koje ne vracaju nijednu vrednost, samo izvršavaju naredbe bez povratne informacije).
Osobine Ključna reč function je obavezna. Naziv funkcije je takođe obavezan deo funkcije, kako bismo kasnije mogli da je pozivamo. Naziv može biti bilo koji niz karaktera, osim rezervisanih reči, koje možete videti u tabeli na sledećem slajdu. Naziv je često kratak opis onoga što funkcija izvršava. Na primer, funkciji koja računa kvadratni koren nekog broja daćemo naziv "`kvadratni. Koren", "`kv. Koren" ili "`koren".
Rezervisane reči
Osobine Ulazni argumenti funkcije nisu obavezni. Funkciji se prilikom poziva prosleđuju ovi argumenti, koje ona koristi u radu. Ukoliko se funkciji prilikom poziva ne proslede svi ulazni argumenti, oni koji nisu prosleđeni dobijaju vrednost undefined. U ovom jeziku moguće je da prilikom definisanja funkcije ne navedemo argumente, a da ih prilikom poziva funkcije unesemo. U telu funkcije su naredbe koje funkcija izvršava. I telo može biti izostavljeno, ali onda funkcija ne bi imala smisla, pa se podrazumeva da je ovo obavezan deo. U telu funkcije mogu se definisati nove promenljive, ali i pozivati postojeće funkcije ukoliko se ukaže takva potreba. Promenljive koje se definišu u telu funkcije „žive" samo u toku rada funkcije. Kada funkcija završi sa radom njima nije moguće pristupiti.
Primeri povratnih funkcija Primer 1: Ova funkcija nema argumenata, ali ima povratnu vrednost. Svaki put kada se pozove ova funkcija ona će vratiti broj 5.
Primeri povratnih funkcija Primer 2: Ova funkcija očekuje da joj se prilikom poziva obezbedi jedan ulazni argument, broj x, a potom ona vrati duplu vrednost tog broja. Ukoliko se ne prosledi ulazni argument, ova funkcija vratiće vrednost „Na. N“ (not a number - nije unet broj).
Primeri povratnih funkcija Primer 3: Ova funkcija ima tri ulazna argumenta, a potom računa zbir unetih brojeva. Ukoliko neki argument nije unešen povratna vrednost će biti "`Na. N".
Primeri povratnih funkcija Primer 4: Ova funkcija ima dva ulazna argumenta, a u telu funkcije je definisana nova promenljiva „zbir“, koja računa zbir ulaznih argumenata. Potom, funkcija vraća vrednost koja je sačuvana u promenljivoj „zbir“.
Primeri povratnih funkcija Primer 5: Program kada naiđe na naredbu return odmah izlazi iz funkcije, t. j. ukoliko u funkciji stoji neka naredba nakon naredbe return, ona nikada neće biti izvršena.
Primeri nepovratnih funkcija Primer 1: Ova funkcija nema ulaznih argumenata, niti povratnu vrednost. Na poziv ove funkcije samo se ispisuje navedeni tekst u internet stranicu.
Primeri nepovratnih funkcija Primer 2: Ova funkcija ima jedan ulazni argument, broj x, a potom ispisuje kvadrat tog broja.
Pozivanje funkcije Ponovo ćemo na primerima pokazati kako se pozivaju određene funkcije, ali i šta je rezultat njihovog rada. Prvo će biti prikazan HTML dokument koji je sačinjen, a zatim, kada se pokrene taj dokument, odgovor internet pretraživača.
Primer 1
Primer 1
Primer 2
Primer 2 Funkcija funkcija „povrsina. Kvadrata“ poziva funkciju „kvadrat. Broja“ koja računa kvadrat prosleđenog argumenta. Prosleđeni argument je broj 5, a nakon izvršenja funkcije prikazuje se broj 25.
Naredni primeri objedinjuju korisničke i ugrađene funkcije
Primer 1
Primer 1 Unos je bio broj 7. Funkcija prompt pokreće ovaj iskačući prozor. Pritisnuto je dugme „Cancel“ ili „X“. Ova funkcija računa površinu i ako je unešeni broj negativan, popravićemo to u sledećem primeru.
Primer 2
Primer 2 Unet je negativan broj. Klikom na dugme „OK“ ili „X“ funkcija nastavlja sa radom i ispisuje ovaj tekst. Kako nije bilo validnog unosa ne bi trebalo biti ni ispisivanja u dokument, a to ćemo popraviti u sledećem primeru.
Primer 3
Primer 3 Ispis pri unosu negativnog broja.
Primer 3 Ovo rešenje je tačno, ali nije u potpunosti ispravno. U okviru rešenja postoji deo koda koji se nikada neće izvršavati. Pokušaj sam da pronađeš taj deo. U nastavku je obeleženo rešenje.
Primer 3
Primer 3
Objekti Objekat u Java. Script jeziku predstavlja kolekciju nekih svojstava. Ova svojstva mogu biti primitivni tipovi podataka, drugi objekti ili funkcije.
Definisanje objekta Definišimo jedan objekat:
Definisanje objekta Prilikom definisanja objekta, prvo stoji kljčna reč var, koja označava promenljivu, a zatim navodimo njegovo ime. U navedenom slučaju za ime smo izabrali reč „auto“. Učestalo je da ime bliže opisuje taj objekat, ali nije obavezno. Ime je kombinacija karaktera, ali nikako ne sme biti neka od rezervisanih reči, koje smo prethodno nabrojali na slajdu 43.
Definisanje objekta Nakon imenovanja objekta stoji znak jednakosti („= “), a potom vitičaste zagrade unutar kojih se navode svojstva koja taj objekat poseduje. Navedeni objekat poseduje četiri svojstva: vrsta, broj. Vrata, motor i potrošnja. Za imena svojstava, t. j. osobina nekog objekta važe ista pravila kao i za ime samog objekta. Nakon navedenog imena osobine stoji interpunkcijski znak „: “, a potom vrednost koju joj dodeljujemo.
Svojstva objekta Vrsta i broj. Vrata su primitivna svojstva ovog objekta (oblika string i int), motor je svojstvo tipa objekat (ima svoja dva svojstva koja su primitivnog tipa), potrošnja je funkcijsko svojstvo (prilikom poziva ono računa zbir dva prosleđena argumenta).
Svojstva objekta Pristupanje promenljivim ovog objekta je na sledeći način: auto. vrsta - vratiće string "`limuzina" auto["vrsta"] - vratiće string "`limuzina„ auto. motor. snaga - vratiće string "`185 hp" auto. potrosnja(8, 100) - vratiće broj 108
Svojstva objekta Ukoliko se pojavi potreba da se kasnije dodefiniše neko svojstvo, to je u ovom jeziku dozvoljeno i izvodi se na sledeći način: Promenljiva auto je isprva definisana sa dva svojstva, vrsta i broj. Vrata, a potom joj se dodaje svojstvo nov, tipa boolean, čija se vrednost postavlja na „true“.
Svojstva objekta Postojećim objektima možemo menjati osobine koje poseduju, na primer: Ovaj objekat je definisan sa dva svojstva, vrsta i broj. Vrata, čije su vrednosti redom „limuzina“ i „ 5“. Potom je svojstvu broj. Vrata promenjena vrednost na „ 3“.
Svojstva objekta Moguće je formirati i potpuno prazan objekat, bez svojstava, kome ćemo naknadno dodavati neophodna svojstva. Ovakav objekat bismo definisali na sledeći način: Napomena: Nakon vitičastih zagrada, prilikom definisanja objekta, može, ali i ne mora stajati interpunkcijski znak „; “, što je definisano sintaksom Java. Script jezika.
Primeri Primer 1: Ovaj objekat ima četiri svojstva i sva su primitivnih tipova.
Primeri Primer 2: Ovaj objekat definisali smo za potrebe registracije korisnika na jednom forumu. Objekat korisnik na početku svojoj osobini ime daje vrednost „Gost“, a potom se može funkcijskim svojstvom promeni. Ime promeniti vrednost. Takođe, definisano je još jedno funkcijsko svojstvo pozdrav, koje kada se pozove aktivira iskačući prozor sa porukom: „Zdravo, moje ime je: “ +this. ime, gde deo this. ime prikazuje vrednost osobine ime tog korisnika.
Primeri Primer 3: Ovo stepenište prikazuje stepenik na kome se trenutno nalazite, a možete hodati na gore ili na dole, kao po pravom stepeništu.
Zadaci
Zadaci Zadatak 3: Nalazite se na internet stranici gatare Mare. Ona pogađa kakvo je vaše raspoloženje ovog trenutka. Zadatak 4: Napraviti simulaciju izvlačenja brojeva za igru na sreću „Loto“. Zadatak 5: Kalkurator proračuna prijateljstva bazirajte na string metodi „local. Compare()“ upoređujući ime i prezime osobe za koju želite da proverite da li vam je pravi prijatelj.
Rešenje zadatka 1
Rešenje zadatka 1 Uneti podaci pri testiranju programa su bili redom „ 50“ i „ 10“.
Rešenje zadatka 2
Rešenje zadatka 3
Rešenje zadatka 3 Rezultat pri jednom testiranju.
Rešenje zadatka 4 Rezultat pri jednom testiranju.
Rešenje zadatka 5 Rezultat pri jednom testiranju.
Zaključak Ovim lekcijama autor je želeo da približi i pojasni pojam funkcija i objekta, a zatim da kroz brojne primere proces učenja i sticanja novih znanja učini što je moguće lakšim. Svaki primer HTML dokumenta koji je naveden unutar lekcija moguće je, ukoliko posedujete internet konekciju, odmah testirati. Na ovaj način stiče se i iskustvo u radu. Za sam kraj, želimo svima vama puno ovakvih trenutaka:
- Slides: 88