You are on page 1of 35

START IT - INĐIJA

HTML, CSS i
JAVASCRIPT
Šta smo naučili?
Promenljive (var)

Osnovne operacije (+, -, *, /, %, &&, ||, !)

Stringovi (length, concat, substring, indexOf)

if/else (===, !==, >=...)


Funkcije
Funkcije predstavljaju neku “radnju”
dokumen
t

Kopir mašina

kopija
dokumenta
Funkcije
Omogućava ponavljanje koda bez dodatnih “ulaganja”
Omogućava da grupišemo u manje celine
ime kojim se jedinstveno identifikuje funkcija
ulazni podaci

function naziv(ulaz){
// kod koji se izvršava kada se
Ključna reč koja
označava da predstoji
pozove
definicija funkcije
}
Funkcije
Da bi se funkcija izvršila, mora se pozvati
var ulaz = “Neki dokument”;

function
odstampajDokument(dokument){
console.log(dokument);
}
pozi
v odstampajDokument(ulaz);
Funkcije
Funkcije mogu da vraćaju rezultat
function pretraziGoogle(pojam){
return služi da prosledi var rezultat;
vrednost iz funkcije nazad na // ovde se pita Google za rezultate i stavlja se u
mesto gde se funkcija poziva // promenljivu rezultat
return rezultat;
}

Pamtimo rezultat u var rezultatPretrage =


novu promenljivu pretraziGoogle(“javascript”);
Funkcije
function function
stampanje(ulaz){ sabiranje(a,b){
console.log(ulaz); console.log(a+b);
} }

function firstLast4(tekst){
var first = tekst.substr(0,4);
var last = tekst.substr(tekst.length-4,
tekst.length);
console.log(first + “ “ + last);
}
Funkcije
function sabiranje(a,b){ function duzeOd(tekst,duzina){
return a + b; if (tekst.length > duzina){
} return true;
var rezultat = }
sabiranje(5,4); return false;
}

if( duzeOd(“javascript”,5) ){
console.log(“Tekst je duzi od
5”);
}
Podsetni
VEŽBA k
function
odstampaj(tekst){
console.log(tekst);
}
1. Napisati funkciju koja prima kao
ulaz 3 broja, a, b i c i štampa function sabiranje(x,y){
return x + y;
srednju vrednost }

var x = sabiranje(3,4)
2. Napisati funkciju koja prima 2
stringa, spaja ih i ukoliko je
dužina novog stringa veća od 10,
vraća tu dužinu, a u suprotnom
vraća tekst “tekst je previše
kratak”
Kompleksni tipovi
2, 3.14, true, “prosti - Brojevi, stringovi, logičke vrednosti su prosti
tipovi” tipovi
Kompleksni tipovi čuvaju više od jedne
informacije
Objekat - kompleksan tip, omogućava lakše struktuiranje
podataka
var osoba = {
ime: “Dušan”,
prezime: “Stanković”,
jmbg: 309989110913
}
Objekti
var osoba = {
ime: “Dušan”,
prezime: “Stanković”,
jmbg: 309989110913
}

Polje koje se nalazi u objektu se naziva property


Pristup određenom propertiju je moguće na 2
ime načina: ime
objekta propertija
osoba.jmb osoba[‘jmbg’]
g
Objekti
var osoba = {
ime: “Dušan”,
prezime: “Stanković”,
jmbg: 309989110913
}

console.log(osoba.ime);

osoba.brojLk = 39900177;
console.log(osoba.jmbg);
console.log(osoba[brojLk]);
Objekti
var post = {
author: “Dusko Vesin”,
parentAuthor: “Startit Centar
Indjija”,
datetime: “May-11-2016-
12:40:00”,
description: “Pedja Rusic je
poznati...”,
date: “13-May-2016”,
event: “...”,
likes: 3
Nizovi
Kolekcija više promenljivih - NIZ
var brojevi = [1, 1, 2, 3, 5, 8, 13, 21,
34, 55];
var reci = [“js”, “index”, “array”,
”object”];
var kombinovano = [“js”, 3, 4, “startit”, 3.14, true];

1 1 2 3 5 8 13 21 34 55
0 1 2 3 4 5 6 7 8 9
Nizovi
Pristup određenom elementu niza
var brojevi = [1, 1, 2, 3, 5, 8, 13, 21,
34, 55];
brojevi[3] brojevi[8]

1 1 2 3 5 8 13 21 34 55
0 1 2 3 4 5 6 7 8 9
Nizovi
Funkcije za rad sa nizovima
var brojevi = [3, 4,
5, 6];
Dužina niza
brojevi.length 4

Dodavanje novog elementa na kraj


brojevi.push(10
niza [3, 4, 5, 6, 10]
);
Skidanje elementa sa kraja niza
var broj = [3, 4, 5, 6]
brojevi.pop();
Primeri
var pretraga = [
rezultat1,
rezultat2,
rezultat3...
]
Podsetni
VEŽBA k ={
var objekat
ime: ‘Dusan’,
prezime: ‘Stankovic’
}

1. Napraviti objekte koji sadrži osnovne informacije objekat.ime


objekat[‘prezime’]
vaših suseda (ime, prezime, godina rodjenja, objekat.pol = ‘M’;
omiljen html tag, omiljen css property)
2. Napravljene objekte dodati u nov niz. var niz = [3, 5, 6, 8];

3. Kreirati jos jedan objekat sa vašim informacijama niz[1] - vraća 5


(kao i gore) i zameniti ga sa prvim članom niza. niz[1] = 15; - postavlja
15 na lokaciju sa
indeksom 1;
niz.pop() - skida
poslednji

niz.push(10); - dodaje
10
Petlje
Petlje uglavnom služe za prolazak kroz niz i
obradu svakog elementa pojedinačno
Petlje
for( pocetnoStanje; uslov;
inkrementacijaStanja){
Kod koji će se izvršavati unutar petlje
}
1. Početno stanje predstavlja podešavanje početnog stanja odnosno brojača
koji će pamtiti dokele smo došli sa kretanjem
2. Ako je uslov zadovoljen, for petlja će se izvršiti, ukoliko je uslov uvek
true, dolazi do endless loop-a
3. inkrementacijaStanja uglavnom uvek menja stanje koje direktno utiče na
uslov, služi za kontrolu da li će se petlja izvršiti sledeći put ili ne
Petlje
Početno podešavanje vrednosti
(stanja) Ako je uslov zadovoljen petlja se izvršav

for(var i=0; i < 10; i=i+1){


console.log(i)
}

Povećavanje vrednosti kako bi na kraju izašli iz pet


Petlje
for(var i=0; i <= 9; var niz = [‘Danas’, ‘je’, ‘lep’, ‘dan’];
i=i+3){ for(var i=0; i < niz.length; i=i+1){
console.log(i) console.log(niz[i])
} }

for(var i=10; i > 0; i=i-


1 ){
console.log(i)
} i predstavlja indeks
VEŽBA Podsetni
k i=0; i < 10; i=i+1){
for(var
console.log(i)
}
1. Napisati funkciju koja prima niz brojeva
kao parametar i povećava svaku vrednost
niza za 3

2. Napisati funkciju koja prima niz brojeva i


vraća sumu(zbir) svih elemenata koji su
veći od 5

3. Napisati funkciju koja prima niz stringova


i spaja ih u jednu rečenicu ubacujući zarez
između svakog stringa
DOMAĆI ZADATAK
Pravila

Zadaci #5, #9 i #10 su obavezni.

Pored ova 3 obavezna zadatka potrebno je uraditi još 4


po izboru za “prolaz”.
DOMAĆI ZADATAK
1/10

Napisati funkciju koja prima 3 broja, ako je zbir tri broja


veci od 30, vraca true, a ako nije, false.
DOMAĆI ZADATAK
2/10

Napisati funkciju koja prima niz stringova i za svaki


string proverava da li je početno slovo tog stringa
samoglasnik (a,e,i,o,u). Ako je uslov ispunjen, menja taj
string sa “nono”.
DOMAĆI ZADATAK
3/10

Napisati funkciju koja prima niz i štampa najmanju i


najveću vrednost u nizu.
DOMAĆI ZADATAK
4/10

Napisati funkciju koja prima string i karakter kao ulaz.


Funkcija broji koliko se puta zadati karakter nalazi u
zadatom stringu i vraća taj broj.
DOMAĆI ZADATAK
5/10

Napisati funkciju koja prima ceo broj n i za sve brojeve


od 1 do n sabira posebno parne, a posebno neparne
brojeve. Funkcija vraća razliku ove dve sume.
DOMAĆI ZADATAK
6/10

Funkcija prima 2 cela broja a i b. Za sve brojeve između


a i b ištampaj samo brojeve koji su deljivi sa 7.
DOMAĆI ZADATAK
7/10

Napisati funkciju koja prima niz brojeva. Funkcija


unutar sebe ima definisan rezultat koji je na početku
nula. Za svaki broj proveravamo sledeće:
Ako je broj manji od 10 množimo rezultat tim brojem.
Ako je broj veći od 10, a manji od 50, oduzima se od
rezultata.
Ako je broj veći od 50 dodaje se na rezultat.
DOMAĆI ZADATAK
8/10

Funkcija prima 3 parametra: niz stringova i dva broja a i


b.
Proći kroz sve elemente niza od indeksa a do b i za
svaki string proveriti da li sadrži neki broj u sebi (ovo se
može izdvojiti u posebnu funkciju). Ako sadrzi, ispisati
“String sadrži broj”, a u suprotnom “String ne sadrži
broj”.
DOMAĆI ZADATAK
9/10

Funkcija prima neki string i broji koliko samoglasnika


ima(a,e,i,o,u). Rezultate brojenja stavlja u jedan niz i
vraća taj niz.
DOMAĆI ZADATAK
10/10

Napisati funkciju koja prima ceo broj (n) i za sve


brojeve od 1 do n proverava da li su deljivi sa 3 i 5. Ako
je broj deljiv sa 3, ispisati "Fizz", ako je deljiv sa 5,
ispisati "Buzz", a ako je deljiv i sa 3 i sa 5, ispisati
"FizzBuzz".
HVALA VAM NA PAŽNJI!
PITANJA?

You might also like