JavaScript

Metoder och egenskaper

I JavaScript arbetar man som programmerare med något som kallas objekt. Ett objekt är en referens till något särkilt i koden, t ex en lista, en textsträng eller dokumentet vi arbetar med. Ofta refererar man till objekt med variabler men det går också att nå de flesta objekt direkt via andra objekt.

Dels finns det objekt som hör till DOM eller JavaScript och dels finns det de som programmeraren själv skapar. Huvudobjektet i DOM heter document och via det går det att nå andra objekt som kan sägas härstamma från document. På objekt kan man utföra metoder eller sätta egenskaper.

Att utföra en metod på ett objekt är som att säga till objektet att göra en speciell uppgift, t ex att halvera sig själv eller skriva ut en text i det aktuella objektet. Att applicera en metod på ett objekt ser ut såhär:

objekt.metod(argument)

och ett exempel på detta är den mycket vanliga :

document.write(nrOfShoes);

som vi känner igen från föregående exempel på Nikes sida. write är alltså en metod som hör till objektet document och har som resultat att det som skickas som argument till metoden skrivs ut på skärmen (i dokumentet).

Vad är då skillnaden på metod och funktion? Egentligen inte så mycket men ett par saker skiljer sig mellan dessa två. En metod utförs på ett objekt till skillnad från funktionen som bara anropas obunden av objekt. Alltså kan en metod inte existera utan dess tillhörande objekt.

Objekt har också egenskaper. Egenskaper för objektet äpple skulle kunna vara form, färg och sötma. Egenskaperna har värden som beskriver hur just det här objektet ser ut. Värdena för egenskaperna på ett speciellt äpple skulle kunna vara runt, rött respektive jättesött.

En egenskap för document är när dokumentet senast uppdaterades vilket heter lastModified. För att skriva ut detta i ett HTML-dokument gör vi följande:


<script type="text/javascript">

	document.write(document.lastModified);

</script>

Vi använder alltså både en metod och en egenskap på objektet document för att skriva ut resultatet till skärmen.