Introduzione a Javascript

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

LINGUAGGIO DI PROGRAMMAZIONE C
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
JavaScript 1. Per cominciare.
JavaScript 2. JavaScript nelle pagine web. HTML e XHTML Gli script JavaScript sono utilizzabili sia in pagine HTML che XHTML XHTML impone che il codice.
PHP.
Algoritmi e Programmazione
Università La Sapienza Web programming e programmazione multimediale 1 Web Programming e comunicazione multimediale Lezione 10: PHP.
Anno accademico Gli operatori e le espressioni in C.
Il linguaggio C Gli operatori e le espressioni C Language
JavaScript Laboratorio di Applicazioni Informatiche II mod. A.
Tipi di dato e controllo del flusso Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dellInformazione Università di Siena Via Roma 56 – – SIENA.
JAVASCRIPT DIFFERENZA TRA JAVASCRIPT E JAVA TAG LO SCRIPT OGGETTI LE CLASSI FUNZIONE GESTORE DI EVENTI ELEMENTI DEL LINGUAGGI è un vero e proprio linguaggio.
Linguaggio MATLAB: costrutti tipici (IF,WHILE…)
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Assegnamento di valore a una variabile Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Lezione 10 (12 novembre 2008) Programmazione in Java: espressioni booleane e controllo del flusso (selezione)
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Le stringhe di caratteri in Java Anno Accademico 2009/2010.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati.
Lezione 4: Costrutti Condizionali Prof. Raffaele Montella.
Fondamenti di Informatica I a.a Il linguaggio C Il controllo di flusso La selezione condizionale Listruzione switch I cicli Le istruzioni break,
PHP – Un’introduzione Linguaggi e Traduttori 2003 Facoltà di Economia
Fondamentidi Programmazione Corso: Fondamenti di Programmazione Classe: PARI-DISPARI Docente: Prof. Luisa Gargano Testo: Aho, Ulman, Foundations of Computer.
Programmazione Corso di laurea in Informatica
Istruzioni di selezione in Java Programmazione Corso di laurea in Informatica.
PHP PHP Hypertext Preprocessor
Dichiarazioni e tipi predefiniti nel linguaggio C
Java base I: Sintassi e tipi di dati
Realizzazione siti web Pagine web dinamiche - javascript.
Corso di PHP.
Programmazione in Java Claudia Raibulet
Javascript Javascript è il linguaggio di scripting più diffuso sul Web
Javascript 5 Selezione. Listruzione IF (in italiano SE) pone una scelta, ossia 'se vero' esegui in un modo oppure 'se falso' esegui in un altro modo.
4 Tipi di dati & variabili
JavaScript 3. Commenti in JS Come in altri linguaggi di programmazione anche javascript offre la possibilità di inserire i commenti all'interno delle.
Javascript 6 Funzioni. Una funzione sarà eseguita in risposta ad un evento o ad una chiamata diretta. Le funzioni possono essere inserite comodamente.
JavaScript 1. Origine E uno dei primi linguaggi di scripting per il web sviluppato da Netscape nel 1995 E interpretato Ha alcune similarità sintattiche.
Javascript: fondamenti, concetti, modello a oggetti
CODIFICA Da flow-chart a C++.
Lezione 6 Strutture di controllo Il condizionale
Parte 4 Elementi di Informatica di base
Laboratorio di Informatica1 Parte 4 Laboratorio di Informatica Dott.ssa Elisa Tiezzi Dott.ssa Elisa Mori.
BIOINFO3 - Lezione 201 Come in ogni corso di introduzione ad un linguaggio di programmazione, proviamo a scrivere lormai celebre primo programma di prova.
BIOINFO3 - Lezione 211 INPUT La lettura di un input dallo standard input (tastiera) si effettua utilizzando lespressione. Quando il programma incontra.
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Appunti di Java (J2SDK 1.4.2, JDK 1.6.0) prof. Antonella Schiavon settembre 2009.
Anno accademico Le istruzioni di controllo in C.
INTRODUZIONE A JAVASCRIPT
JavaScript Generalità Cos'è JavaScript?
Lezione 3 Struttura lessicale del linguaggio
Script di shell (bash).
Corso JAVA Lezione n° 03 Istituto Statale di Istruzione Superiore “F. Enriques”
1 Corso di Informatica (Programmazione) Lezione 8 (7 novembre 2008) Programmazione in Java: operatori aritmetici, operatori di assegnamento e cast.
Javascript Istruzioni di ciclo: for(inizio; condizione; incremento ) {blocco istruzioni} istruzione seguente; – inizio e incremento possono contenere più.
Parte 3 Lo stato: variabili, espressioni ed assegnazioni
Corso di Algoritmi e Strutture Dati APPUNTI SUL LINGUAGGIO C
Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre.
Informatica B Allievi Elettrici - AA Fondamenti della programmazione in linguaggio C (II) Istruzioni e strutture di controllo.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
1 Fabio Scotti – Università degli Studi di Milano Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza Valentina Ciriani ( )
Tecnologie lato Client: Javascript © 2005 Stefano Clemente I lucidi sono in parte realizzati con materiale tratto dal libro di testo adottato tradotto.
13 ottobre Decisioni F. Bombi 13 ottobre 2002.
Operatori di incremento e decremento
Ancora sulla shell. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure.
Cloud informatica V anno. Introduzione a PHP Lo scripting PHP PHP è un linguaggio di scripting lato server. Le caratteristiche di un linguaggio di scripting.
Eprogram informatica V anno. Introduzione a PHP Introduzione La diffusione di PHP ha avuto un notevole incremento dalla fine degli anni Novanta a oggi,
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
Transcript della presentazione:

Introduzione a Javascript Programmazione Web Introduzione a Javascript

Javascript - Definizione JavaScript è un linguaggio di scripting lato-client, ossia un linguaggio di programmazione interpretato dal browser che prevede la scrittura di script Uno script è un piccolo programma (contenuto o importato in una pagina HTML) che viene interpretato ed eseguito dal browser Mediante l’uso di script è possibile creare dinamicamente i contenuti di una pagina web e aggiungere interattività alla pagina stessa (con un occhio alle prestazioni) Javascript NON É Java: JavaScript e Java sono due linguaggi di programmazione differenti!!! Programmazione Web - Introduzione a Javascript 2

Programmazione Web - Introduzione a Javascript Javascript – Lo script Gli script JavaScript possono essere: contenuti in uno o più file di testo con estensione js e linkati al file HTML con il tag script che va inserito fra i tag head <head> <script type=“text/javascript” src=“myScript.js”/> <head> contenuti nel file HTML, inseriti come testo all’interno del tag script <script type=“text/javascript”> ... </script> Programmazione Web - Introduzione a Javascript 3

Inserire lo script in una pagina Esistono inoltre alcuni attributi HTML in cui si può incorporare del codice: gli attributi per la gestione degli eventi, come onclick, possono contenere frammenti di codice (ma non dichiarazioni), da eseguire al verificarsi dell’evento l’attributo href del tag <a> può fare riferimento a una funzione javascript con la sintassi: javascript:nome_funzione(parametri); in questo caso, il click del link eseguirà la chiamata alla funzione Programmazione Web - Introduzione a Javascript 4

Esecuzione di uno script Tutte le funzioni e le variabili dichiarate negli script diventano disponibili (quindi possono essere usate e chiamate) non appena il parser analizza il punto della pagina in cui sono dichiarate Se uno script contiene codice immediato, cioè scritto al di fuori di funzioni, questo viene eseguito non appena il parser analizza il punto della pagina in cui il codice compare Gli script possono utilizzare liberamente funzioni e variabili dichiarate in altri script inseriti nella stessa pagina. Programmazione Web - Introduzione a Javascript 5

Programmazione Web - Introduzione a Javascript Alcuni esempi (I) Programmazione Web - Introduzione a Javascript 6

Programmazione Web - Introduzione a Javascript Alcuni esempi (II) Programmazione Web - Introduzione a Javascript 7

Programmazione Web - Introduzione a Javascript Alcuni esempi (II) Programmazione Web - Introduzione a Javascript 8

Programmazione Web - Introduzione a Javascript Alcuni esempi (II) Programmazione Web - Introduzione a Javascript 9

Programmazione Web - Introduzione a Javascript Alcuni esempi (III) Programmazione Web - Introduzione a Javascript 10

Programmazione Web - Introduzione a Javascript Alcuni esempi (III) Programmazione Web - Introduzione a Javascript 11

Programmazione Web - Introduzione a Javascript Alcuni esempi (III) Programmazione Web - Introduzione a Javascript 12

Programmazione Web - Introduzione a Javascript Alcuni esempi (IV) Programmazione Web - Introduzione a Javascript 13

Programmazione Web - Introduzione a Javascript Alcuni esempi (IV) Programmazione Web - Introduzione a Javascript 14

Partiamo dalla sintassi... JavaScript è un linguaggio di programmazione case sensitive ossia fa distinzione tra lettere maiuscole e minuscole num è diverso da Num Ogni singola istruzione va conclusa con il punto e virgola!! alert(“Hello world!!!”); I commenti all’interno di uno script vanno inseriti tra i caratteri /* e */ oppure dopo // per commenti su una riga /* questo è un commento */ Programmazione Web - Introduzione a Javascript 15

Programmazione Web - Introduzione a Javascript Tipi di dati In Javascript possiamo avere i seguenti tipi di dati Numeri - in JavaScript non vi è differenza tra numeri interi e numeri in virgola mobile Stringhe - una stringa è formata da una sequenza di zero o più caratteri racchiusi tra apici singoli o doppi (‘ o “): “casa” è la stringa casa “casa ‘Pisa’” è la stringa casa ‘Pisa’ ‘casa “Pisa”’ è la stringa casa “Pisa” Valori Booleani - è un dato che esprime un “valore di verità” e può assumere solo due valori true e false Array o Oggetti, che vedremo dettagliatamente più avanti Programmazione Web - Introduzione a Javascript 16

Dichiarazione di variabile Una variabile viene dichiarata mediante l’uso della parola chiave var: var i; dichiara la variabile i var j = 0; dichiara la variabile j e le assegna il valore 0 var s = “casa”; dichiara la variabile s e le assegna il valore “casa” Se una variabile viene ri-dichiarata, non perde il suo valore Programmazione Web - Introduzione a Javascript 17

Variabili locali e globali var s = “pluto”; variabile s locale di tipo stringa con valore iniziale “pluto” var n = 3; variabile n locale di tipo numerico con valore 3 t = “paperino”; variabile t globale di tipo stringa con valore iniziale “paperino” m = n; variabile m globale di tipo numerico con valore 3 u = v; la variabile u ha valore undefined (in quanto v non è a sua volta definita) var b = (3>2); variabile b locale booleana con valore true var o = new Object(); variabile o locale di tipo Object (vuota) Programmazione Web - Introduzione a Javascript 18

Programmazione Web - Introduzione a Javascript Operatori aritmetici Somma (+) somma due numeri oppure concatena due stringhe (o concatena numeri a stringhe) Sottrazione (-) sottrae il secondo numero dal primo Prodotto (*) moltiplica tra loro due numeri Divisione (/) divide il primo numero per il secondo Modulo (%) restituisce il resto della divisione intera del primo operando per il secondo 5 % 2 = 1 Incremento/Decremento (++/--) l’operatore ++ (--) aumenta (diminuisce) di una unità il valore di una variabile (attenzione all'uso post-fisso e pre-fisso) i = i + 1; è analogo a i++; i = i – 1; è analogo a i--; Assegnamento (= += -= *= /= %=) esegue l'operazione ed effettua l'assegnamento del valore dell'espressione che sta a destra dell'operatore alla variabile che sta a sinistra i += 10; è analogo a i = i + 10; Programmazione Web - Introduzione a Javascript 19

Operatori di confronto Sono operatori che verificano una relazione tra due operandi e restituiscono un valore booleano (true o false) a seconda che la relazione sia o meno verificata Sono: Uguaglianza (==) Uguaglianza esatta (===), cioè con stesso valore e stesso tipo Disuguaglianza (!=) Minore di (<) Maggiore di (>) Minore o uguale a (<=) Maggiore o uguale a (>=) Programmazione Web - Introduzione a Javascript 20

Programmazione Web - Introduzione a Javascript Operatori logici AND (&&) restituisce un valore true se e solo se il primo operando e il secondo sono entrambi veri. Se uno o entrambi gli operandi sono falsi restituisce false OR (||) restituisce un valore true se il primo operando o il secondo o entrambi sono veri. Se entrambi gli operandi sono falsi restituisce false NOT (!) è un operatore unario, ossia si applica ad un solo operando. Restituisce il valore false se l’operando è vero, viceversa restituisce true se l’operando è falso Programmazione Web - Introduzione a Javascript 21

Operatore condizionale In Javascript esiste un operatore condizionale che assegna ad una variabile un valore a seconda di una particolare condizione nome_variabile=(condizione)?valore1:valore2 Programmazione Web - Introduzione a Javascript 22

Programmazione Web - Introduzione a Javascript Operatori - Esempi var s = “tre ” + 2; la stringa s vale “tre 2” s += “ uno”; la stringa s vale “tre 2 uno” s > “ciao”; l’espressione vale true, in quanto il valore di s è lessicograficamente successivo a “ciao” typeof(s); restituisce “string” eval(“3+1”); restituisce 4 eval(“f(x)”); esegue lo script, chiamando f(x) e restituendo il valore di ritorno della chiamata eval(“var s=1”); dichiara la variabile s e le assegna il valore 1 void(f(x)); esegue f(x) ed ignora il suo valore di ritorno Programmazione Web - Introduzione a Javascript 23

Programmazione Web - Introduzione a Javascript Il costrutto if..else if (espressione) istruzione1; else istruzione2; il costrutto if permette di decidere quale istruzione eseguire a fronte del valore dell’espressione racchiusa tra parentesi se il valore di espressione è vero allora si esegue istruzione1, altrimenti si esegue istruzione2 è possibile avere un if senza la parte else Programmazione Web - Introduzione a Javascript 24

Il costrutto if..else - Esempio Programmazione Web - Introduzione a Javascript 25

Il costrutto if..else - Esempio Programmazione Web - Introduzione a Javascript 26

Programmazione Web - Introduzione a Javascript Il costrutto switch Javascript dispone del costrutto switch con la stessa sintassi di Java: switch (espressione) { case v1: istruzioni break; case v2: istruzioni default: istruzioni } L’espressione viene valutata e confrontata con i valori dei diversi case: vengono quindi eseguite le istruzioni a partire dal primo case con lo stesso valore dell’espressione se nessun case è selezionato, vengono eseguite le istruzioni del default, se presenti se si desidera limitare l’esecuzione a un gruppo di istruzioni, è necessario introdurre la parola chiave break Programmazione Web - Introduzione a Javascript 27

Il costrutto switch - Esempio Programmazione Web - Introduzione a Javascript 28

Il costrutto switch - Esempio Programmazione Web - Introduzione a Javascript 29

Programmazione Web - Introduzione a Javascript Il ciclo for for (inizializza; test; incremento) istruzione; Il ciclo for permette di ripetere istruzione in modo ciclico fino a quando test risulta essere vero for (var i = 0; i < 10; i++) istruzione; Inizializza la variabile i con il valore zero, esegue istruzione e quindi incrementa il valore di i. A questo punto esegue il test i<0 e se questo è vero inizia da capo eseguendo di nuovo istruzione Per tutti i costrutti ciclici vale l'uso classico di break e continue Programmazione Web - Introduzione a Javascript 30

Programmazione Web - Introduzione a Javascript Il ciclo for - Esempio Programmazione Web - Introduzione a Javascript 31

Programmazione Web - Introduzione a Javascript Il ciclo for - Esempio Programmazione Web - Introduzione a Javascript 32

Programmazione Web - Introduzione a Javascript Il ciclo while while (espressione) istruzione; Il ciclo while permette di ripetere istruzione in modo ciclico fino a quando espressione risulta essere vero se espressione non è mai vera è possibile che istruzione non venga mai eseguita per fare in modo che istruzione non venga eseguita all’infinito è necessario che espressione prima o poi diventi false Programmazione Web - Introduzione a Javascript 33

Il ciclo while - Esempio Programmazione Web - Introduzione a Javascript 34

Il ciclo while - Esempio Programmazione Web - Introduzione a Javascript 35

Programmazione Web - Introduzione a Javascript Il ciclo do-while do istruzione while (espressione); Il ciclo do-while permette di ripetere istruzione in modo ciclico fino a quando espressione risulta essere vero istruzione viene eseguita almeno una volta per fare in modo che istruzione non venga eseguita all’infinito è necessario che espressione prima o poi diventi false Programmazione Web - Introduzione a Javascript 36

Il ciclo do-while - Esempio Programmazione Web - Introduzione a Javascript 37

Il ciclo do-while - Esempio Programmazione Web - Introduzione a Javascript 38

Funzioni in Javascript (I) Una funzione racchiude una porzione di codice JavaScript che può essere eseguito e viene definita mediante la parola chiave function nel seguente modo: function nomeFunzione (par1, par2) { istruzioni; ... } Programmazione Web - Introduzione a Javascript 39

Funzioni in Javascript (II) Le funzioni Javascript sono in realtà variabili con valore di tipo Function Per fare riferimento a una funzione è sufficiente usare il suo nome, o un’espressione equivalente che abbia valore di tipo Function Una volta ottenuto il riferimento a una funzione è possibile: chiamare la funzione passandole una lista di parametri è possibile omettere uno o più parametri al termine della lista; in questo caso, tali parametri varranno undefined nel corpo della funzione passare come argomento una funzione ad un’altra funzione assegnare una funzione a una o più variabili accedere a tutti gli elementi della funzione, per modificarla o ridefinirla, tramite le proprietà di Function verificare se una funzione è definita come si farebbe con qualsiasi variabile, ad esempio testandola con un if(nome_funzione) Programmazione Web - Introduzione a Javascript 40

Funzioni in Javascript (III) Le funzioni restituiscono il controllo al chiamante al termine del loro blocco di istruzioni È possibile restituire un valore al chiamante, in modo da poter usare la funzione in espressioni più complesse, utilizzando la sintassi return espressione L’espressione può essere di qualsiasi tipo; essa viene valutata e il valore risultante è restituito Se la funzione non restituisce nessun valore, Javascript sottintende un “return undefined” implicito Programmazione Web - Introduzione a Javascript 41

Programmazione Web - Introduzione a Javascript Funzioni - Esempi //funzione con due parametri, dichiarazione diretta function prodotto(a,b) { return a*b; } //oggetto funzione assegnato a una variabile var per = new Function(“a”,”b”,”return a*b;”); Programmazione Web - Introduzione a Javascript 42

Funzioni – Uso di “arguments” Programmazione Web - Introduzione a Javascript 43

Funzioni – Passaggio di parametri Il passaggio dei parametri alle funzioni Javascript avviene in maniera diversa a seconda del tipo del parametro stesso: i tipi booleano, stringa, numero e undefined sono passati per valore, cioè nella funzione è presente una copia del valore usato come argomento; cambiamenti locali alla funzione non influenzano il valore dell’argomento usato nella chiamata alla funzione stessa il tipo oggetto è passato per riferimento; la manipolazione del contenuto dell’oggetto si riflette sull’oggetto usato come argomento Programmazione Web - Introduzione a Javascript 44

Chiusura di una funzione (I) Tutto il codice Javascript viene eseguito in un contesto, compreso quello globale In particolare, ogni esecuzione di una funzione ha un contesto associato Una closure si crea proprio a partire da una funzione, quando quest’ultima restituisce come valore di ritorno una nuova funzione creata dinamicamente Programmazione Web - Introduzione a Javascript 45

Chiusura di una funzione (II) Una closure, cioè una funzione creata all'interno di un'altra funzione e poi restituita, mantiene il contesto di esecuzione della funzione che l'ha creata Questo significa che il contesto di ciascuna chiamata della funzione generatrice non viene distrutto all'uscita della closure, come avviene in generale, ma conservato in memoria La closure potrà fare riferimento (in lettura e scrittura) ai parametri e alle variabili dichiarate nel contesto della funzione che l'ha creata Programmazione Web - Introduzione a Javascript 46

Programmazione Web - Introduzione a Javascript Closure – Esempio (I) Programmazione Web - Introduzione a Javascript 47

Programmazione Web - Introduzione a Javascript Closure – Esempio (I) Programmazione Web - Introduzione a Javascript 48

Programmazione Web - Introduzione a Javascript Closure – Esempio (II) Programmazione Web - Introduzione a Javascript 49

Programmazione Web - Introduzione a Javascript Closure – Esempio (II) Programmazione Web - Introduzione a Javascript 50

Closure – Esempio (III) Programmazione Web - Introduzione a Javascript 51

Closure – Esempio (III) Programmazione Web - Introduzione a Javascript 52

Closure – Esempio (III) Programmazione Web - Introduzione a Javascript 53

Programmazione Web - Introduzione a Javascript Closure – Esempio (IV) 2010/2011 Programmazione Web - Introduzione a Javascript 54

Gestione delle eccezioni Nelle versioni più recenti di Javascript è stato introdotto anche un sistema di gestione delle eccezioni in stile Java Un’eccezione segnala un imprevisto, spesso un errore, all’interno della normale esecuzione del codice Un’eccezione può venire sollevata dalle librerie di Javascript o dal codice scritto dall’utente, attraverso la parola chiave throw Per gestire le eccezioni, è possibile avvalersi del costrutto try…catch…finally Programmazione Web - Introduzione a Javascript 55

Programmazione Web - Introduzione a Javascript Eccezioni - Esempio Programmazione Web - Introduzione a Javascript 56

Programmazione Web - Introduzione a Javascript Eccezioni - Esempio Programmazione Web - Introduzione a Javascript 57

Programmazione Web - Introduzione a Javascript La clausola throw Programmazione Web - Introduzione a Javascript 58