Увод у Јаваскрипт (JavaScript)¶
JavaScript је програмски језик чија је главна намена да омогући додавање функционалности и акција у веб-странама. JavaScript је језик интернета, који нам омогућава да испрограмирамо оно што ће се десити на веб-странама.
Поред језика HTML и CSS, JavaScript је трећи језик који користимо у формирању веб-страна:
језик HTML омогућава да дефинишемо садржај који ћемо приказати на веб-страни и структуру тог садржаја;
језик CSS омогућава да дефинишемо изглед и распоред елемената на веб-страни;
језик JavaScript омогућава да унесемо неке акције у наше веб-стране, реагујемо на догађаје и додамо неку интеракцију са корисницима нашег веб сајта. JavaScript нам омогућава да дамо живот нашој веб-страни.
Основе језика JavaScript¶
У овом курсу подразумевамо да су читаоци већ упознали бар један програмски језик, па се нећемо бавити детаљним објашњавањем основних концепата који су исти код велике већине програмских језика. Уместо тога, убрзано ћемо прећи стандардне појмове као што су наредба, променљива, израз, додељивање, наредбе гранања, наредбе понављања (познате и као петље, односно циклуси), функције, низови (листе), објекти и слично. Нешто више пажње ће бити посвећено специфичностима језика JavaScript, то јест оним особинама овог језика које нису уобичајене за остале језике.
Акценат овог поглавља ће бити на примерима формирања интерактивних веб-страна, које могу динамички да мењају свој садржај и остварују комуникацију са корисником, а због којих се JavaScript и учи.
JavaScript програм је обичан текстуални фајл у који стављамо низ наредби:
прва наредба;
друга наредба;
...
последња наредба;
Свака наредба треба да се заврши симболом „;
“ (тачка-зарез). Додуше, JavaScript интерпретер нам неће узети за зло чак ни када заборавимо да ставимо симбол „;
“ на крај наредбе. Ако буде успео да схвати где се завршава наредба (иако нема „;
“ на крају), он ће извршити програм толеришући ситне грешке.
Као и у другим програмским језицима, поред наредби у JavaScript програму пишемо и коментаре. Подсетимо се: коментари су пропратни текст, који служи људима који читају програм да га лакше разумеју. Коментари не утичу на извршавање програма (програм са коментарима се извршава исто као и да коментара нема). У JavaScript програмима коментари се пишу или после две косе црте (до краја тренутног реда), или између знакова „/*
“ и „*/
“:
// Овај ред садржи само коментар
прва наредба;
/*
Коментар
написан
у више редова
*/
друга наредба; // Коментар је од две косе црте до краја овог реда.
...
последња наредба;
Неке наредбе језика JavaScript су врло сличне одговарајућим наредбама у другим језицима. На пример, наредбе if и while се могу лако разумети уз мало искуства у било ком програмском језику. Функције су такође (бар у основним случајевима) лако читљиве и њихово разумевање не би требало да представља проблем ономе ко се већ сусретао са функцијама у неком програмском језику.
Други делови језика JavaScript могу захтевати мање или више додатне пажње због различитог писања, мада су концептуално познати. На пример, запис „i++;
“ значи повећај i
за један, док „n % i
“ представља остатак при дељењу n
са i
. Оваква синтакса (као и синтакса наредбе for
) се могу наћи у још неким језицима, као што су C
, C++
, C#
, Java
. Са друге стране, функције за учитавање података (prompt
) и њихово приказивање (alert
и друге) су потпуно специфичне за JavaScript. О овим специфичностима ће бити више речи у наредним лекцијама.
Погледајте пажљиво следећи JavaScript програм и немојте га још извршавати:
Покушајте да већ сада разумете шта овај програм ради, мада још нисмо заиста почели да учимо језик JavaScript. Колико су вам разумљиве наредбе овог програма? Можете ли да кажете какав резултат ће програм у последња два реда приказати помоћу функције alert
?
Сада проверите да ли сте добро разумели програм, тако што ћете га покренути притиском на дугме „Покрени програм“.
Од читалаца се очекује извесно (не велико) искуство у решавању алгоритамских задатака, какав је овај који сте управо видели, па се таквим задацима нећемо много бавити. Да бисмо што боље искористили расположиво време, примери и задаци у наредним лекцијама су од почетка оријентисани на употребу JavaScript програма у мењању садржаја и изгледа веб-страна.
Сврха примера који следе је пре свега да илуструју могућности језика и да заинтересују и подстакну читаоце да наставе да проширују и продубљују стечено знање (а не да директно послуже за детаљно учење језика).