Ondřej Žára, Seznam.cz
…programovací jazyk
…jednoduchý
…složitý
…expresivní
…rozšířený
…starý
<script src="soubor.js"></script>
<script>var a = 13;</script>
var a = "ahoj";
var b = 2 * 13;
var c = true;
var f = function(x, y) { return x+y; }
function g(x, y) { return x*y; }
if (a > b) {
a++;
} else {
c += d;
}
for (i=0; i<5; i++) {
console.log(i);
}
var pole = [1, 4, "ahoj"];
var data = {
jmeno: "Jan",
prijmeni: "Novák",
vek: pole[1]
}
console.log(data.jmeno);
var pole = [1, 4, "ahoj"];
console.log(pole.length);
pole.push(3.14);
console.log(pole.length);
pole.push(pole);
// ?
document
window
, navigator
, alert…
document.body.innerHTML = "Ahoj <em>světe</em>";
var img = document.createElement("img");
img.src = "...";
var p = document.querySelector("p");
p.appendChild(img);
Až uživatel klikne na X, vykonej funkci Y
var test = function() {
alert("Kliknuto");
}
document.addEventListener("click", test);
// tzv. anonymní funkce
document.addEventListener("click", function() {
alert("Kliknuto");
});
addEventListener
<body>
?<form>
) má událost submit
preventDefault
, která prohlížeči nařídí událost ignorovatvar kontrola = function(e) {
if (...) { e.preventDefault(); }
}
form.addEventListener("submit", kontrola);
var xhr = new XMLHttpRequest();
xhr.open("get", url, true);
xhr.send();
var odpoved = function(e) {
var xhr = e.target;
alert(xhr.status);
alert(xhr.responseText);
}
xhr.addEventListener("load", odpoved);
<canvas width="640" height="480"></canvas>
var canvas = document.querySelector("canvas");
var context = canvas.getContext("2d");
context.fillStyle = "red";
context.fillRect(0, 0, 100, 100);
context.fillStyle = "red";
context.strokeStyle = "blue";
context.clearRect(x, y, w, h);
context.fillRect(x, y, w, h);
context.strokeRect(x, y, w, h);
context.beginPath();
context.moveTo(x, y);
context.lineTo(x, y);
context.quadraticCurveTo(cpx, cpy, x, y);
context.bezierCurveTo(cpx1, cpy1, cpx2, cpy2, x, y);
context.arc(...what the hell...);
context.fill();
context.stroke();
context.strokeText(text, x, y);
context.fillText(text, x, y);
context.measureText(text);
context.drawImage(image, x, y);
context.drawImage(jinyCanvas, x, y);
context.drawImage(image, dx, dy, dWidth, dHeight);
context.drawImage(
image,
sx, sy, sWidth, sHeight,
dx, dy, dWidth, dHeight
);
var id = context.getImageData(0, 0, w, h);
alert(id.data.length); // pocet pixelu * 4
id.data[0] = 255; // plna cervena
context.putImageData(id, x, y);
context.save();
context.scale(0.5);
context.rotate(Math.PI / 2);
context.fillRect(0, 0, 100, 100);
context.restore();
Prostor pro otázky
Ondřej Žára, vývojář UI senior, ondrej.zara@firma.seznam.cz