• Autor objave:
  • Kategorija objave:JavaScript
  • Vrijeme čitanja:3 mins read

Leksička struktura iliti semantika je skup elementarnih pravila koja određuju kako pišete programe na određenom jeziku. Određuje koje su uloge praznina u jeziku, kako izgledaju nazivi varijabli, kako se pišu komentari, odvajaju izjave i sl.

Izjava (Statement)

Izjava je instrukcija koju izvodi računalo. Naš računalni program je kolekcija izjava.

Izjava se sastoji od:

  • vrijednosti
  • operatera
  • izraza
  • ključnih riječi
  • komentara

U izjavi var x; var je ključna riječ, a x je vrijednost. U izjavi var x = 2; = je operater.

Vitičaste zagrade

Vitičaste zagrade određuju blok izjavu, koja grupira nula ili više izjava. Treba ih uvijek koristiti, čak i onda kad nisu obavezne. To naš kod čini dosljednim i lakšim za ažuriranje.

npr.

if (x) {
     console.log('Ovako je ispravno');
     console.log('Ova izjava je također uključena u blok');
}

if (x)
     console.log('Ova izjava je uključena u blok');
     console.log('Ova izjava NIJE uključena u blok');

Indentacija (uvlačenje teksta)

Iako JS ignorira indentaciju treba ju korisiti zbog lakšeg čitanja koda i ona treba biti konzistentna.

Točka-zarez

Točka-zarez se koristi za odvajanje izjava. Najbolje ju je uvijek koristiti na kraju izjava iako nije obavezna u slučajevima kada su izjave u zasebnim linijama.

Više o sintaksti

https://www.w3schools.com/js/js_syntax.asp

Deklaracije

Vrijednosti

  • Literali – nepromijenjive vrijednosti (brojevi, tekst)
  • Varijable – promjenjive, koriste se za spremanje podataka
    • ključna riječ var
    • operater dodjeljivanja =
    • puni izraz za varijablu x
      var x = 1;

Deklaracije

Prije upotrebe varijable treba je kreirati. Kreiranje varijabli naziva se deklaracija. One se deklariraju s ključnom riječi var. Po default-u vrijednost deklarirane varijable je undefined. Kad se varijabla deklarira to znači da se rezervira memorijski prostor za nju. Ako joj nismo (još) dodjelili vrijednost, onda u tom prostoru piše undefined. Za razliku od toga vrijednost null ne pokazuje ni na jednu memorijsku lokaciju.

Dodjeljivanje vrijednosti zove se inicijalizacija. Deklaracija i inicijalizacija se mogu obaviti u jednom izrazu.

// Deklaracija varijabli
var ime;
var god;

// Može i u jednom redu
var ime, god;

// Deklaracija i inicijalizacija u jednom potezu
var ime="Pero";
var god=25;

Imenovanja

JavaScript razlikuje mala od velikh slova.

Identifikator (ime za imenovanje varijabli, funkcija i petlji) uvijek mora početi slovom, podvlakom ili znakom $. Ključne riječi se ne smiju korisiti kao identifikatori.

Postoje tzv. naming konvencije kojih se treba pridržavati da bi nam kod bio konzistentan i lakši za snalaženje.

Konvencije za imenovanje (naming convention)

Sva imena moraju biti opisna (self-explanatory), da se već iz imena zna o čemu se radi.

Varijable, funkcije, komponente – camelCase

var dogName = "Snoopy"

Klase – PascalCase

class = "BlogTitle"

Boolean – camelCase sa prefiksima is / has

Uvijek imenujemo s pozitivom, pa makar je po default-u vrijednost false.

var hasOwner = true;
var isChecked = false;

Konstante – UPPERCASE / UPPER_SNAKE_CASE

var DAYS = 7;
var DAYS_UNTIL_TOMORROW = 1;

Više na: 10 JavaScript pravila za imenovanje

Komentari

JavaScript podržava 2 vrste komentara

  • sa znakovima // – samo za komentra u jednom redu
  • između znakova /* i */ – za komentare u više redova
// Ovo je komentar u jednom redu.

/* Ovo je još jedna komentar */

/* Ovo je komentar u više redova.
 * Ove dodatne zvjezdice u svakom
 * redu nisu obavezne, koriste se
 * po želji radi bolje pregldnosti.
*/

JavaScript Doc komentari

Pomoću ovih komentara koji objašnjavaju dijelove koda se može generirati dokumentacija. Više informacija na: https://jsdoc.app/about-getting-started.html

/**
* Creates an instance of Circle.
*
* @constructor
* @author: John Doe
* @this {Circle}
* @param {number} r radius of the circle
*/
function Circle(r) {
this.radius = r;
this.circumference = 2 * Math.PI * r;
}

Više o deklaracijama