JavaScript
|
|
---|---|
Paradigma | olio-ohjelmointi [1] |
Tyypitys | löyhä, dynaaminen [1] |
Yleinen suoritusmalli | tulkittu [1] |
Muistinhallinta | roskienkeruu [1] |
Julkaistu | 1995 [1] |
Kehittäjä | Brendan Eich, Netscape Communications Corporation, Mozilla Foundation [1] |
Vakaa versio | 1.8.5 [2] |
Merkittävimmät toteutukset | KJS, Rhino, SpiderMonkey, V8, WebKit, Carakan, Chakra [1] |
Vaikutteet | C, Java, Perl, Python, Scheme, Self [1] |
Vaikuttanut | CoffeeScript, Dart, JScript .NET, Objective-J, QML, TIScript [1] |
Käyttöjärjestelmä | alustariippumaton [1] |
Verkkosivu | Ecmascript.org |
Uutisryhmä | javascript |
JavaScript on alun perin Netscape Communications Corporationin kehittämä pääasiassa Web-ympäristössä käytettävä komentosarjakieli. JavaScriptin tärkein sovellus on mahdollisuus lisätä Web-sivuille dynaamista toiminnallisuutta. JavaScriptiä ei tule sekoittaa Javaan.
Sisällysluettelo
Yleistä[muokkaa | muokkaa wikitekstiä]
JavaScriptin nykymuoto on dynaamisesti tyypitetty, tulkattava oliopohjainen komentosarjakieli, jonka syntaksi perustuu löyhästi C-ohjelmointikieleen.
Viimeisin kielen määrittely on JavaScript 1.8.5, joka pohjautuu EcmaScript-standardiin ECMA-262 Edition 3. Standardoitua JavaScriptiä kutsutaan nimellä ECMAScript. JavaScriptiä kehittää standardin mukaiseksi Netscape yhdessä ECMA-standardointiorganisaation kanssa.[3][4]
Useat selaimet tukevat standardin lisäksi lisätoiminnallisuuksia, kuten Mozilla-selainten E4X, joka on XML:n käsittelyyn erikoistunut kielen laajennus (standardi ECMA-357).
Historia[muokkaa | muokkaa wikitekstiä]
JavaScriptin kehitti alun perin Netscapelle Brendan Eich nimellä Mocha. Nimi muutettiin LiveScriptiksi ja viimein markkinointisyistä JavaScriptiksi. Java-ohjelmointikielen kanssa JavaScriptillä ei ole kuitenkaan juurikaan yhteistä.
Ominaisuuksia[muokkaa | muokkaa wikitekstiä]
Prototyyppi-pohjainen oliomalli[muokkaa | muokkaa wikitekstiä]
Javascriptin oliomallin perusyksikköjä ovat object- ja function-oliot. Oliomalli ja sen enkapsulaatio ja periytyvyys pohjautuu prototyyppeihin, ei luokkiin kuten useimmissa olio-ohjelmointikielissä (esim. Smalltalk, C++, Java, Ruby).[5]
Ohjelmointityyli[muokkaa | muokkaa wikitekstiä]
JavaScriptille ei ole yksittäistä ohjelmointityyliä tai syntaksia sanelevaa ohjetta. Yleensä mainitaan Crowfordin, Googlen tai Yahoon tyylioppaat.
Mime-tyyppi ja tiedostoliite[muokkaa | muokkaa wikitekstiä]
Javascript-tiedostojen tiedostoliite on yleensä .js
.
Javascript-tiedostojen mime-tyyppi on application/javascript
tai vanhentunut text/javascript
.[6]. Jälkimmäistä käytetään kuitenkin yhä laajasti, sillä Internet Explorer ei tue virallista mime-tyyppiä.
Esimerkkiohjelmia[muokkaa | muokkaa wikitekstiä]
Hei, maailma! JavaScript-skripti upotettuna HTML-dokumenttiin[muokkaa | muokkaa wikitekstiä]
<html> <head> <title>JavaScript-esimerkki</title> </head> <body> <script> document.write("Hei, maailma!"); </script> </body> </html>
Itsestään toistava esimerkki upotettuna HTML-dokumenttiin[muokkaa | muokkaa wikitekstiä]
<html> <head> <title>JavaScript-esimerkki 2</title> </head> <body> <script> function SayHello() { alert("Hei!") setTimeout("SayHello()", 10000); } </script> <input type="button" value="Paina" onclick="SayHello()"/> </body> </html>
Anonyymi funktio[muokkaa | muokkaa wikitekstiä]
/** Anonyymi funktio joka kutsuu itseään, * palauttaa merkkijonon "Bar" 66% ja "Foo" 33% todennäköisyydellä, * ja kulkeutuu sitten roskienkeruuseen. **/ (function(arg){ if (arg instanceof Array) { // pino eli periytyykö Arraysta for (var i in arg) { // pinon iterointi arg[i] = String.fromCharCode(arg[i]); // numeroarvosta merkki }; arg = arg.join(""); // kirjainpinosta merkkijonoksi }; return arg; })(Math.random() < 0.33 ? [70, 111, 111] : "Bar") // argumenttina kolmiehtoinen-operaatio, 'ternary'
Lähteet[muokkaa | muokkaa wikitekstiä]
- ↑ a b c d e f g h i j k JavaScript (html) Wikibooks. Viitattu 10.12.2011. (englanniksi)
- ↑ Määritä nimeke! (html) Mozilla Foundation. Viitattu 10.12.2011. (englanniksi)
- ↑ JavaScript and the ECMAScript Specification 2011. Mozilla Developer Network. Viitattu 10.12.2011. (englanniksi)
- ↑ ECMAScript Documentation (html) Viitattu 10.12.2011. (englanniksi)
- ↑ Object Oriented Programming Wikibooks. Viitattu 15.12.2011. (englanniksi)
- ↑ RFC 4329
Aiheesta muualla[muokkaa | muokkaa wikitekstiä]
Kuvia tai muita tiedostoja aiheesta JavaScript Wikimedia Commonsissa
- Weppipakin JavaScript-resurssit
- JavaScript-opassarja
Tuotantokäytössä |
Ada • APL • AWK • Assembly • C • C++ • C# • COBOL • Delphi • Eiffel • Fortran • Java • JavaScript • Lua • Lisp • Objective-C • Pascal • Perl • PHP • PostScript • Python • Ruby • Smalltalk • TCL • Visual Basic |
---|---|
Akateemiset | |
Historialliset |
ALGOL • BASIC • Modula-3 • MUMPS • Plankalkül • PL/I • Simula |