Oggetti e classi

L’oggetto è una grandezza informatica in grado di rappresentare i dati.

Nella programmazione OOP tutte i dati si rappresentano e si elaborano tramite oggetti.

Quando scrivo:

pippo = new Date();

o:

pippo = ″Ciao gente!″;

non assegno semplicemente un valore a una variabile. Creo un oggetto di uno specifico tipo che oltre ai dati contiene tutti gli strumenti necessari ad elaborarlo.

Nella programmazione OOP i tipi di oggetto (il tipo è, in generale, determinato dal tipo di dati che l’oggetto è destinato ad elaborare) si chiamano classi.

La classe, cioè, è l’insieme di regole che determinano come funziona un oggetto di una determinato tipo (o, i termini OOP, un istanza di una determinata classe).

In Javascript non si fa menzione espressa del temine class (che per altro è una parola riservata che non può essere usata dall’utente). Per noi quindi oggetto (inteso come tipo di oggetto) e classe saranno sinonimi.

Esistono oggetti (classi) predefinite dal linguaggio, oggetti (classi) create dalla comunità dei programmatori e che posso caricare e utilizzare nelle mie pagine Web e, infine, noi stessi possiamo creare le nostre classi per risolvere i nostri problemi.

Proprietà e metodi

Ogni tipo di oggetto o classe è caratterizzato da:

  • Proprietà che ci consentono di leggere o modificare determinate caratteristiche di un individuo della classe
  • Metodi che ci mettono a disposizione determinate azioni che gli oggetti possono compiere o subire

Le proprietà si usano come le variabili, solo che non sono globali ma riferite ad un elemento specifico: l’oggetto (l’istanza della classe)

Una volta che una variabile contiene un oggetto

pippo = ″Ciao gente!″;

Si può accedere alle sue proprietà con due sintassi diverse

Usando l’operatore di appartenenza ?•?

var len = pippo.length;

Usando le parentesi quadre che racchiudano il nome della proprietà come stringa di caratteri.

var len = pippo[″length″];

In entrambi i casi len conterrà il numero di caratteri di cui è composta la variabile stringa pippo.

I metodi si usano come le funzioni, solo che non sono globali ma riferite ad un elemento specifico: l’oggetto (l’istanza della classe)

Una volta che una variabile contiene un oggetto

pippo = new Date();

Posso accedere ai suoi metodi.Come le funzioni i metodi possono ricevere parametri e ritornare valori.

Uso l’operatore di appartenenza ?•? e faccio seguire l’identificatore dall parentesi tonde

var giorno = pippo.getDate();

giorno contiene il giorno del mese della data corrente.

Alcuni metodi accettano parametri:

pippo.setDate(1);

La variabile pippo conterrà il primo giorno del mese corrente.

L'oggeto document

Quando il browser carica la pagina web crea automaticamente l’oggetto document.

L’oggetto document è costituito dall’insieme di tutti gli elementi HTML definiti nella pagina.

La maggior parte dell’attività di programmazione in javascript consiste nell’interagire con l’oggetto document: aggiungere elementi, estrarre elementi e modificarli, rispondere con azioni agli eventi provocati dall’utente ecc.

Come epr gli altri oggetti l’accesso alle proprietà e ai metodi avviene attraverso l’operatore di appartenenza (.)

Se, per esempio, voglio recuperate l’elemento con id mio_id:

var elemento = document.getElementById(‘mio_id’);

L'istruzione if

L’istruzione if può avere due forme:

if ( espressione ) blocco di istruzioni

if ( espressione ) blocco di istruzioni else blocco di istruzioni

L'espressione che compare dopo la parola chiave if deve essere di tipo logico, se la condizione risulta vera viene eseguita l'istruzione subito seguente; nel secondo caso, invece, se la condizione risulta vera si esegue l'istruzione seguente, altrimenti si esegue l'istruzione subito dopo la parola chiave else.

Per più scelte invece si può usare l'else if che permette di porre una condizione anche per le alternative, lasciando ovviamente la possibilità di mettere l'else (senza condizioni) in posizione finale.