Què és JavaScript?
JavaScript® és el llenguatge de tipus scripting orientat a objectes desenvolupat per Netscape, utilitzat en millions de pàgines web i aplicacions de servidor arreu del món. El JavaScript de Netscape extén el llenguatge de scripting standard definit a l'ECMA-262 Edició 3 (ECMAScript), amb només lleus diferències de l'standard publicat.
Al contrari del que popular ment es creu de forma errònia, JavaScript no és "Java interpretat". En resum, JavaScript és un llegunatge d'scripting dinàmic que suporta contrucció d'objectes basada en prototipus. La sintaxi bàsica és similar a Java i C++ de forma intencionada per a reduir el nombre de conceptes nous requerits per a aprendre el llenguatge. Construccions del llenguatge, com ara sentències if
, bucles for
i while
, blocs switch
i try ... catch
funcionen de la mateixa forma que en aquests llenguatges (o bé d'una forma molt semblant).
JavaScript pot funcionar com un llenguatge tant procedural com orientat a objectes. Els objectes es creen de forma programàtica en JavaScript tot afegint-hi mètodes i propietats a objectes en temps d'execució que d'altra forma serien buits, contràriament a les definicions sintàctiques de classes tan comunes a llenguatges compilats com C++ i Java. Un cop construit un objecte aquest pot ser utilitzat com a motlle (o prototipus) per a crear objectes similars.
Les capacitats dinàmiques de JavaScript inclouen construcció d'objectes en temps d'execució, llistats de paràmetres variables, funcions com a variables, creació dinàmica de scripts (via eval
), introspecció d'objectes (via for ... in
) i recuperació del codi font (els programes escrits en JavaScript poden decompilar els cosos de funcions a la seva forma original de codi font).
Els objectes intrínsecs són Number
, String
, Boolean
, Date
, RegExp
, i Math
.
Per a una discussió més profunda de la programació en JavaScript seguiu els enllaços de recursos de JavaScript que trobareu a sota.
Quines implementacions de JavaScript hi ha disponibles?
mozilla.org alberga dues implementacions de JavaScript. La primera implementació de JavaScript de tots els temps va ser creada per Brendan Eich a Netscape, i des de llavors ha sigut actualitzada per a compliar amb la ECMA-262 Edició 5 i versions posteriors. Aquest motor, anomenat SpiderMonkey, està implementat en C. El motor Rhino, creat principalment per Norris Boyd (també a Netscape) és una implementació JavaScript en Java. Com el SpiderMonkey, Rhino compleix amb ECMA-262 Edició 3.
Al llarg del temps s'han anat afegint diverses optimitzacions al motor de JavaScript SpiderMonkey, com ara TraceMonkey (Firefox 3.5), JägerMonkey (Firefox 4) i IonMonkey.
A més de les implementacions anomenades a dalt, existeixen altres motors JavaScript, com ara:
- El V8 de Google, utilitzat al navegador Google Chrome i a les versions més recents del navegador Opera.
- El JavaScriptCore (SquirrelFish/Nitro), utilitzat a alguns navegadors basats en WebKit, com ara l'Apple Safari.
- El Carakan, utilitzats en versions antigues d'Opera.
- El Chakra, utilitzat en Internet Explorer (tot i que el llenguatge que implementa és anomenat formalment "JScript" per a evitar problemes amb marques registrades).
Tots els motors de JavaScript de mozilla.org exposen una API pública que les aplicacions poden emprar per a saber sobre el suport de JavaScript. L'entorn més comú per a JavaScript són els navegadors web, amb diferència. Els navegadors web usualment utilitzen una API pública per a crear 'objectes host' responsables d'exposar el DOM dins de JavaScript.
Una altra aplicació comuna de JavaScript és com a llenguatge d'escripting al cantó del servidor (web). Un servidor web de JavaScript exposaria els objectes host que representen peticions HTTP i objectes resposta, que podrien llavors ser manipulats per un programa JavaScript per a generar pàgines web de forma dinàmica.
Recursos de JavaScript
- SpiderMonkey
- Informació específica per a incrustar el motor JavaScript escrit en C (també conegut com a SpiderMonkey).
- Rhino
- Informació específica sobre la implementació de JavaScript escrita en Java (també coneguda com a Rhino).
- Recursos del llenguatge
- Recull dels standards de JavaScript publicats.
- Una re-introducció a JavaScript
- Guia de JavaScript i referència de JavaScript.