JavaScript a Object Oriented Programovanie (OOP)
JavaScript je skvely jazyk na pisanie objektovo orientovanych web aplikacii. Moze podporovat OOP pretoze podporuje dedicnost cez prototyping rovnako aj metody a procedury. Vela vyvojarov sa dava na Javascript, pretoze su zvyknuy na formu syntaxe v C# a Jave. Vela ludi si neuvedomuje, ze Javascript podporuje dedicnost. Moze pisat kod, co je uzavrety a znovu pouzitelny

Co je take skvele na objektoch ?
Objekty su skvele, pretoze sa sa spravaju ako objekty v realnom zivote - objekty maju metody a vlastnosti. Ak by sme sa rozpravali o objekte lampa, mohla by mat metodu zazni a vlastnosti napr. vysku, a vahu. Metody mozu byt zavolane nespocet krat.

Vytvaranie objektov a metoda new Object :
Je niekolko sposobov, ako sa da vytvorit objekt
Najjednoduchsie je pouzit operator new Object():

<script language="javascript" type="text/javascript">
person = new Object()
person.name = "Tim Scarfe"
person.height = "6Ft"
person.run = function() {
this.state = "running"
this.speed = "4ms^-1"
} </script>

Definujme "person," s vlastnostami.


Tvorenie objektov pomocou "Literal Notation"
Ina cesta na vytvorenie objektu je pomocou literal notation. Podporovana od verzie JavaScript1.2, je viac robustna cesta na vytvorenie objektu pocas behu programu :
<script language="javascript" type="text/javascript">
timObject = {
property1 : "Hello",
property2 : "MmmMMm",
property3 : ["mmm", 2, 3, 6, "kkk"],
method1 : function(){alert("Method had been called" + this.property1)}
};
timObject.method1();
alert(timObject.property3[2])
var circle = { x : 0, y : 0, radius: 2 }
var rectangle = {
upperLeft : { x : 2, y : 2 },
lowerRight : { x : 4, y : 4}
}
alert(rectangle.upperLeft.x)
</script>

Literal notion moze obsahovat polia alebo hodnoty Avsak pouzivanie "new" alebo literalnej notacie je este celkom jednoducha a logicka cesta. Najvacsi pruser je ze, vysledok nie je znovupouzitelny ... To znamena, ze nemozeme sucasne spustit rozne verzie vytvorenych objektov. Napriklad ak by sme chceli zmenit meno "tim scarfe" v prvom objekte, tak by sme museli redefinovat nas cely objekt aby sa zmena prejavila

-Uvod do tutorialu (zakladne cesty, ako vytvorit objekt)
-Object constructor a "prototyping"
-Subtriedy a supertriedy
-Polia, cykly a JScript.NET


Spä¯