www.seznam.cz

| Interpret(y) | Prohlížeč(e) | 
| Spidermonkey, Tracemonkey, Jägermonkey | Mozilla, Firefox, Camino | 
| JScript, Chakra | Internet Explorer | 
| V8 | Google Chrome | 
| JavaScriptCore, SquirrelFish (Nitro) | Safari | 
| Futhark, Carakan | Opera | 
| KJS | Konqueror | 
alert, window, document, …
document.addEventListener("click", funkce, false);
document.attachEvent("onclick", funkce);
var odstavce = document.getElementsByTagName("p");
for (var i=0; i<odstavce.length; i++) {
	odstavce[i].parentNode.removeChild(odstavce[i]);
}
var Clovek = function() {};          /* funkce je datový typ */
Clovek.prototype.mzda = 1;           /* kde se vzala vlastnost prototype? */
Clovek.prototype.pracuj = function() {
	this.penize += this.mzda;
};
var Programator = function() {};
Programator.prototype = new Clovek(); /* přepsání vlastnosti prototype */
Programator.prototype.mzda = 2;
var ondra = new Programator();
ondra.pracuj();
	
var jakSeJmenujes = function() { alert(this.jmeno); }
var jmeno = "Lojza";
jakSeJmenujes();
var objekt = {
	jmeno: "Pepa"
}
jakSeJmenujes.call(objekt);
var Clovek = function(jmeno) {
	this.jmeno = jmeno;
}
Clovek.prototype.jakSeJmenujes = jakSeJmenujes;
var jarda = new Clovek("Jarda");
jarda.jakSeJmenujes();
	
Úloha: po kliknutí na každou z položek číslovaného seznamu vypsat její pořadí
var items = ul.getElementsByTagName("li");
for (var i=0; i<items.length; i++) {
	var item = items[i];
	var poKliknuti = function() { alert(i); }
	item.addEventListener("click", poKliknuti, false);
}
	
/* specifikace značky, atributů a stylů */
var input = JAK.mel("input", {type:"text", value:"ahoj"}, {color:"red"});
/* CSS 1 selektor */
var odstavce = JAK.query("#id .class p");
/* souřadnice vůči levému hornímu rohu stránky */
var pos = JAK.DOM.getBoxPosition(odstavce[0]); 
JAK.DOM.append([rodic1, prvek1, prvek2], [rodic2, prvek3, …]);
	
var Odkaz = function(a) {
	this.id = JAK.Events.addListener(a, "click", this, "_click");
};
Odkaz.prototype._click = function(e, elm) {
	JAK.Events.cancelDef(e);
	alert(elm.href);
	JAK.Events.removeListener(this.id);
};
	
new Odkaz(JAK.gel("id"));
	
var Class = JAK.ClassMaker.makeClass({
	NAME: "Test class",
	VERSION: "1.0"
});
Class.prototype.method = function(a) {};
var Interface = JAK.ClassMaker.makeInterface({
	NAME: "Test interface"
});
Interface.prototype.otherMethod = function() {};
var SubClass = JAK.ClassMaker.makeSingleton({
	NAME: "Test subclass",
	EXTEND: Class,
	IMPLEMENT: [Interface]
});	
SubClass.prototype.method = function(a, b) {
	this.$super(a);
}
SubClass.getInstance().method();
	
var Sender = JAK.ClassMaker.makeClass({
	NAME: "Sender",
	IMPLEMENT: JAK.ISignals
});
Sender.prototype.send = function() {
	this.makeEvent("porad-se-neco-deje");
};
var Receiver = JAK.ClassMaker.makeClass({
	NAME: "Receiver",
	IMPLEMENT: JAK.ISignals
});
Receiver.prototype.$constructor = function(sender) {
	this.addListener("porad-se-neco-deje", "_receive", sender);
};
Receiver.prototype._receive = function(e) { alert(e.type); }
	
var r = new JAK.Request(JAK.Request.XML); /* možno také TEXT, JSONP, BINARY */
var odpoved = function(xmlDoc, status) {
	alert("HTTP/" + status);
	alert(xmlDoc.documentElement.nodeName);
}
r.setCallback(odpoved);
var data = {
	"a": "b",
	"c": ["něco", "něco jiného"]
};
r.send("/zpracuj.php", data);
	
var div = JAK.mel("div");
var i = new JAK.CSSInterpolator(div, 500);
i.addProperty("opacity", 1, 0);
i.addProperty("width", 500, 0, "px");
i.addColorProperty("backgroundColor", "#f00", "#000");
i.start();
	
var Metronom = function() {}
Metronom.prototype.tick = function() {}
	
var m = new Metronom();
var t = JAK.Timekeeper.getInstance();
t.addListener(m, "tick", 5); /* jednou za 100ms */
/* nějaká činnost … */
t.removeListener(m);
	
Prostor pro otázky