prethodna      sadržaj       slijedeća     
Vodič za core JavaScript 1.5 



Poglavlje 1   JavaScript pregled


Ovo poglavlje uvodi nas u JavaScript, raspreda o njegovim osnovnim konceptima i objašnjava nova svojstva kod 1.5 izdanja.

Ovdje možete naći slijedeće:



Što je JavaScript?

I opet kažem ->JavaScript je Netscape-ova cross-platforma, objektno-zasnovan skriptni jezik. JavaScript je mali, lagani jezik; nije pogodan kao samostojeći jezik, nego je stvoren kao dodatak za druge proizvode i aplikacije kao što su web browseri. Unutar host okruženja, JavaScript može se povezati sa objektima njegova okružja kako bi omogućio programsku kontrolu nad njima.

Osnove JavaScripta sadrže osnovni set objekata kao što su Array, Date , i Math, ali i osnovni set jezičnih elemenata kao što su operatori, kontrolne strukture i naredbe. Osnove JavaScripta mogu se proširiti za razne namjene dodavajući na te osnove dodatne objekte; na primjer:

Kroz JavaScript-ovu LiveConnect funkcionalnost, možete omogućiti da Java i JavaScript code komuniciraju međusobno. Iz JavaScripta, možete stvarati primjere Java objekata i pristupiti njihovim javnim metodama i poljima. Iz Jave, možete pristupiti JavaScript objektima, osobinama, i metodama.

Netscape je izumio JavaScript i JavaScript se prvobitno koristio u Netscape browserima.



JavaScript i Java



JavaScript i Java su na neki način slični, ali u osnovi to su različiti jezici. JavaScript sliči Javi ali nema Javinu jaku provjeru pisanja. JavaScript podržava većinu Javine sintaxe i osnovnu kontrolu toka.

Nasuprot Javinom compile-time sistemu class-ova napravljenih pomoću deklaracija, JavaScript podržava runtime system zasnovan na manjem broju tipova podataka predstavljajući numeric, Boolean, i string vrijednosti. JavaScript ima prototype-based object model umjesto uobičajenog class-based object model. Prototype-based model osigurava dinamično nasljeđivanje; tj., ono što se naslijedi može varirati kod pojedinih objekata. JavaScript takođe podržava funkcije bez nekih posebnih deklarativnih zahtjeva. Funkcije mogu biti svojstva objektima, koje se izvršavaju kao nestabilno napisane metode.

JavaScript je vrlo neformalan jezik u odnosu na Javu. Ne morate definirati sve varijable, class-ove, i metode. Ne treba vas se ticati da li su metode javne, privatne ili zaštičene, i ne morate primjenjivati sučelja. Varijable, parameteri i function return types se izričito ne pišu.

Java je class-based programski jezik napravljen za brzo izvršavanje i sigurnost pisanja. Sigurnost pisanja znači, npr. da ne možete ubaciti Java integer unutar object reference ili pristupiti privatnoj memoriji izmjenom Java bytecode-a. Javin class-based model da se programi sastoje isključivo od  class-ova i njihovih metoda.Ovi zahtjevi čine Java programiranje mnogo složenije od JavaScripta.

JavaScript silazi s linije malog, dinamičkog jezika kao što su HyperTalk i dBASE. Ovi skriptni jezici nude programske alate za mnogo veći broj korisnika zbog njihove jednostavnije sintaxe.


Tablica 1.1    JavaScript u usporedbi sa Javom



JavaScript

Java

Object-oriented. Nema razlike među tipovima objekata. Nasljeđivanje je kroz mehanizam prototipa. Svojstva i metode mogu se dodati dinamički svakom objektu.  

Class-based. Objekti se dijele na class-ove i instance sa svim nasljeđivanjem kroz class hijerarhiju. Class-ovi i instance ne mogu imati dinamički dodana svojstva i metode.  

Tipovi varijabli se ne definiraju (dinamičko pisanje).  

Tipovi varijabli se moraju definirati (statičko pisanje).  

Ne može automatski zapisivati na hard disk.  

Ne može automatski zapisivati na hard disk.  

Pogledajte više o različitostima JavaScripta i Jave Poglavlje 8, "Detalji Object Modela."



JavaScript i ECMA specifikacije



Netscape je izumio JavaScript i JavaScript se prvobitno koristio u Netscape browserima. Pa ipak, Netscape surađuje sa ECMA (European Computer Manufacturers Association) da stvori standardan, internacionalni programski jezik na osnovama JavaScript. ECMA je međunarodno udruženje za  standarde u informacijskim i komunikacijskim sistemima. Ova standardizirana verzija JavaScripta, zvana ECMAScript, ponaša se na isti način u svim aplikacijama koje podržavaju ovaj standard. Kompanije mogu koristiti ovaj open standard jezik za razvoj njihovih implementacija JavaScripta. Prva verzija ECMA standarda je dokumentirana u ECMA-262 specifikaciji.

ECMA-262 standard je takođe priznat od  ISO (International Organization for Standards) kao ISO-16262. Možete naći  PDF verziju od ECMA-262 na mozilla Web site-u. Takođe možete naći specifikaciju na ECMA Web site-u. ECMA specifikacija ne obja�njava Document Object Model (DOM), koji je standardizirao World Wide Web Consortium (W3C). DOM definira način na koji su HTML objekti izloženi u vašoj skripti.


Odnos između JavaScripta i ECMA verzija

Netscape usko surađuje sa ECMA na stvaranju ECMA specifikacije. TNaredna tablica pokazuje odnos između JavaScripta i ECMA verzija.


Tablica 1.2    JavaScript i ECMA verzije



JavaScript verzija

Odnos sa ECMA verzijom

JavaScript 1.1  

ECMA-262, Edition 1 se zasniva na JavaScript 1.1.  

JavaScript 1.2  

ECMA-262 nije bio potpun kada je  JavaScript 1.2 stvoren. JavaScript 1.2 nije u potpunosti kompatibilan sa ECMA-262, Edition 1, zbog slijedećeg:


  • Netscape je napravio dodatke za JavaScript 1.2 koji nisu uvaženi u ECMA-262.


  • ECMA-262 je dodala 2 nove stvari: internacionalizaciju korištenja Unicode i jednoobrazno ponašanje na svim platformama. Nekoliko stvari iz JavaScript 1.2, kao što su Date object, bile su ovisne o platformi i imale specifično ponašanje za određenu platformu.

 

JavaScript 1.3  

JavaScript 1.3 je potpuno kompatibilan sa ECMA-262, Edition 1.

JavaScript 1.3 je riješio neusklađenost JavaScript 1.2 sa ECMA-262, zadržavajući sve dodatke iz JavaScript 1.2 izuzev == i !=, koje su promjenjene radi usklađivanja sa ECMA-262.  

JavaScript 1.4  

JavaScript 1.4 je potpuno kompatibilan sa ECMA-262, Edition 1.

Treće izdanje ECMA specifikacije nije završeno kad je JavaScript 1.4 završen.  

JavaScript 1.5  

JavaScript 1.5 je potpuno kompatibilan sa ECMA-262, Edition 3.  

Uočite: ECMA-262, Edition 2 sastoji se od manjih uvodnih izmjena i bug popravaka iz Edition 1 specifikacije. Radna grupa TC39 iz ECMA-e trenutno radi na ECMAScript Edition 4, koji će odgovarati budućem izdanju JavaScripta, JavaScript 2.0.

Core JavaScript Reference pokazuje koje osobine jezika se podudaraju sa ECMA.

JavaScript će uvijek imati nešto što ne pripada ECMA specifikaciji; JavaScript je kompatibilan sa ECMA, ali ima i neke dodatne stvari.


JavaScript dokumentacija nasuprot ECMA specifikaciji

ECMA specifikacija je skup zahtjeva za primjenu ECMAScripta; to je korisno ako želite odrediti da li je nešto iz JavaScripta podržano od ECMA-e. Ako planirate napisati JavaScript code koji ima samo ECMA obilježja tada morate proučiti ECMA specifikaciju.

ECMA dokument nema namjeru pomoći script programerima. Koristite JavaScript dokumentaciju kao informaciju pri pisanju skripti.


JavaScript i ECMA terminologija

ECMA specifikacija koristi terminologiju i sintaxu koji mogu biti nepoznati JavaScript programeru. Iako opis jezika se može razlikovati u ECMA-u, jezik sam po sebi ostaje isti. JavaScript podržava svu funkcionalnost iznesenu u ECMA specifikaciji.

JavaScript dokumentacija daje izgled jezika koji je prilagođen JavaScript programeru. Na primjer :



Nove osobine u ovom izdanju

JavaScript verzija 1.5 ima slijedeće nove osobine i poboljšanja:


prethodna      sadržaj      slijedeća     
Copyright © 2000 Netscape Communications Corp. All rights reserved.

Posljednje izmjene Rujan 28, 2000