Přeskočit na obsah

JavaScript

Z Wikipedie, otevřené encyklopedie
Možná hledáte: programovací jazyk Java.
JavaScript
Paradigmaobjektový, funkcionální, událostmi řízený
Vznik1995
AutorBrendan Eich
VývojářNetscape Communications Corporation, Mozilla Foundation
Poslední verzeECMAScript 2018[1] (červen 2018)
Typová kontroladynamická, duck-typing
Hlavní implementaceKJS, Rhino, SpiderMonkey, V8, Chakra
Ovlivněn jazykyJava, Self, C, Scheme
Ovlivnil jazykyActionScript, CoffeeScript, Dart, JScript .NET, Objective-J, QML, TypeScript, Node.js, LiveScript

JavaScript je multiplatformní, objektově orientovaný, událostmi řízený skriptovací jazyk, jehož autorem je Brendan Eich z někdejší společnosti Netscape. Jeho syntaxe (zápis zdrojového textu) patří do rodiny jazyků C/C++/Java, ale JavaScript je od těchto jazyků zásadně odlišný sémanticky (funkčně, pricipiálně), jde o jiný jazyk. Slovo Java je součástí jeho názvu pouze z marketingových důvodů. JavaScript byl v červenci 1997 standardizován asociací ECMA (European Computer Manufacturers Association) a v srpnu 1998 ISO (International Organization for Standardization). Standardizovaná verze JavaScriptu je pojmenována ECMAScript a z ní byly odvozeny i další implementace, jako je například ActionScript. JavaScript byl původně obchodní název implementace společnosti Netscape, kde byl vyvíjen nejprve pod názvem Mocha, později LiveScript, ohlášen byl společně se společností Sun Microsystems v prosinci 1995 jako doplněk k jazykům HTMLJava. Pro verzi firmy Microsoft je použit název JScript. Ten je podporován platformou .NET. Jeho nejčastější použití v současnosti zahrnují:

  • Webové stránky, do kterých je často vkládaný přímo jako součást HTML kódu stránky. Interpretaci v tomto případě provádí webový prohlížeč návštěvníka stránky. Jsou jím obvykle ovládány různé interaktivní prvky GUI (tlačítka, textová políčka) nebo tvořeny animace a efekty obrázků. Prakticky to znamená, že se program v JavaScriptu obvykle spouští až po stažení webové stránky z Internetu (tzv. na straně klienta), na rozdíl od ostatních jiných interpretovaných programovacích jazyků (např. PHPASP), které se spouštějí na straně serveru ještě před stažením z Internetu. Z toho plynou jistá bezpečností omezení – v prohlížeči spouštěný JavaScript např. nemůže pracovat se soubory, aby tím neohrozil soukromí uživatele.
  • JavaScript se využívá i na straně serveru. První implementací JavaScriptu na straně serveru byl LiveWire firmy Netscape vypuštěný roku 1996. Dnes existuje několik možností včetně opensource implementace Rhinola založené na Rhino, gcj, Node.js, Deno a Apache. Událostmi řízená architektura je dělá vhodnými pro tvorbu serverových aplikací, které pracují v reálném čase.
  • Také je možno jej spouštět v operačních systémech Windows pomocí programu Windows Script Host a nahradit tak dávkové soubory MS-DOS. Manipulaci se soubory lze například provádět za pomoci objektu FileSystemObject, který se používá i na výše zmíněných serverech.
  • Kromě DHTML se JavaScript používá k psaní rozšíření pro mnohé aplikace, například Adobe Acrobat.

Použití mimo webové stránky

Kromě webových prohlížečů a serverů je interpret JavaScriptu vestavěný v mnoha různých nástrojích. Každý z těchto nástrojů poskytuje vlastní objektový model, který poskytuje přístup k hostitelskému prostředí. Jádro JavaScriptu zůstává většinou stejné v každé aplikaci.

Vestavěný scriptovací jazyk

  • Většina rozšíření pro webové prohlížeče je implementována použitím JavaScriptu, např. rozšíření Chrome, Safari, Opera atd.
  • Některé NoSQL datábáze jako je MongoDB nebo CouchDB akceptují dotazy napsané v JavaScriptu.
  • Acrobat and Adobe Reader podporují JavaScript v souborech typu PDF.
  • Nástroje v Adobe Creative Suite, včetně Photoshop, Illustrator, Dreamweaver a InDesign umožňují skriptování pomocí JavaScriptu.
  • Kancelářský balík aplikací OpenOffice umožňuje JavaScript používat jako skriptovací jazyk.
  • Interaktivní zpracování signálu hudebního software Max/MSP nabízí v jeho prostředí model JavaScriptu pro použití vývojářům. To umožňuje mnohem přesnější ovládání než výchozí programovací model GUI-centric.
  • Digitální software Apple Logic Pro X audio workstation umožňuje vytvořit vlastní MIDI efekty pluginy pomocí JavaScriptu.
  • ECMAScript byl zahrnut v normě VRML97 pro skriptování uzlů souborů VRML.
  • Herní engine Unity 3D ve starších verzích podporoval upravenou verzi JavaScriptu pro skriptování pomocí Mono.[2]
  • DX Studio (3D engine) používá implementaci JavaScriptu SpiderMonkey pro hry a simulace logiky.[3]
  • Maxwell Render poskytuje skriptovací engine ECMA standardu pro automatizaci úkolů.[4]
  • Google Apps Script v tabulkách Google a Google Sites umožňuje uživatelům vytvářet vlastní vzorce, automatizovat opakující se úlohy a také komunikovat s ostatními produkty Google jako je Gmail.[5]
  • Mnoho klientů IRC, jako je ChatZille nebo XChat, používají JavaScript pro jejich scriptovací činnosti.
  • Produkty SpinetiX používají SpiderMonkey JavaScript pro scriptování v SVG souborech.
  • Platformy ObjectGears, ServiceNow

Skriptovací engine

  • Technologie Active Scripting od Microsoftu podporuje JavaScript jako skriptovací jazyk.[6]
  • Programovací jazyk Java v 6. verzi představil balíček javax.script, který obsahuje implementaci JavaScriptového enginu Rhino. Java aplikace tak mohou hostit skripty, které přistupují k proměnným a objektům této aplikace, stejně jako webové prohlížeče, kde skripty mohou přistupovat k objektovému modelu dokumentu webové stránky.[7]
  • Nástroj Qt C++ obsahuje modul QtScript, který interpretuje JavaScript stejně jako Java balíček javax.script.[8]

Vývojové nástroje

Vzhledem k tomu, že při programování pro různé webové prohlížeče mohou nastat implementační rozdíly (zvláště v objektovém modelu dokumentu), je vhodné mít přístup k debuggeru v každém webovém prohlížeči, na které je aplikace zaměřena.[9]

Debuggery jsou dostupné pro Internet Explorer, Firefox, Safari, Google Chrome, Opera a Node.js.[10][11][12]

Odkazy

Reference

  1. Standard ECMA-262 [online]. Ecma International, 2017-07-03. Dostupné online. 
  2. Unity Scripting [online]. unity3d.com [cit. 2013-01-29]. Dostupné v archivu pořízeném dne 2015-02-28. 
  3. Technical Specification [online]. dxstudio.com [cit. 2009-10-20]. Dostupné v archivu pořízeném dne 2010-03-25. 
  4. THINK! The Maxwell Render Resourcer Center, Scripting References Archivováno 2. 11. 2011 na Wayback Machine.
  5. Google Apps Script, Welcome to Google Apps Script
  6. Version Information (JavaScript) [online]. Msdn.microsoft.com [cit. 2013-05-26]. Dostupné online. 
  7. javax.script release notes [online]. Java.sun.com [cit. 2009-05-19]. Dostupné online. 
  8. Nokia Corporation, QtScript Module Archivováno 9. 7. 2010 na Wayback Machine.
  9. Advanced Debugging With JavaScript [online]. alistapart.com, 2009-02-03 [cit. 2010-05-28]. Dostupné online. 
  10. The JavaScript Debugging Console [online]. javascript.about.com, 2010-05-28 [cit. 2010-05-28]. Dostupné online. 
  11. SplineTech JavaScript Debugger - an independent standalone JavaScript Debugger [online]. javascript-debugger.com, 2013-08-26 [cit. 2013-08-26]. Dostupné online. 
  12. Debugging with Node Inspector [online]. http://docs.strongloop.com/ [cit. 2014-05-07]. Dostupné v archivu pořízeném dne 2014-05-08. 

Související články

Externí odkazy