vorrei sapere per cortesia, se vi sono differenze tra questi due codici:
1) if(typeof(e) == "undefined")
2) if(e == undefined)
Grazie![]()
vorrei sapere per cortesia, se vi sono differenze tra questi due codici:
1) if(typeof(e) == "undefined")
2) if(e == undefined)
Grazie![]()
Pietro
si... la seconda non verifica l'esatto tipo della data variabile e
infatti prova a fare
<script>
e = null;
if(e == undefined)
alert("sono uguali");
else
alert("sono diversi");
</script>
ti dirà che sono uguali... MA NON è VERO... perchè e è NULL!
allora si procede così
e === undefined
che verifica anche l'uguaglianza... ma questo sistema A VOLTE non funziona su IE...
quindi ci viene incontro la funzione typeof... quindi la prima soluzione è la + indicata
«Se leggi dimentichi, se vedi capisci, se fai impari» Piaget
Sono due cose molto diverse.
Nel primo caso verifichi se il TIPO di una variabile e` definito, nel secondo se la variabile e` definita.
Ad esempio:
var e;
if(e == undefined) ...
In questo caso la e e` definita, dato che nella prima riga viene definita; se mancasse la prima riga e la variabile non comparisse mai prima, sarebbe indefinita.
Tornando all'esempio, la varibile non ha un tipo definito: non ha ancora contenuto nulla. IL tipo viene definito come:
number, string, variable, object or keyword.
a seconda di cosa contiene la var. Nota che in JS il tipo viene definito dinamicamente, cioe` puo` venir cambiato nel corso della validita` della variabile.
Esempio:
var e=7; // il tipo e` number
if(e>6) e="valutazione sufficiente"; // ora il tipo e` string
if(typeof(e) == 'string') e=document.getElementById('voto'); // il tipo e` diventato object
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
ConfessoOriginariamente inviato da Mackey
si... la seconda non verifica l'esatto tipo della data variabile e
infatti prova a fare
<script>
e = null;
if(e == undefined)
alert("sono uguali");
else
alert("sono diversi");
</script>
ti dirà che sono uguali... MA NON è VERO... perchè e è NULL!
allora si procede così
e === undefined
che verifica anche l'uguaglianza... ma questo sistema A VOLTE non funziona su IE...
quindi ci viene incontro la funzione typeof... quindi la prima soluzione è la + indicatala domanda è nata leggendo una tua risposta:
http://forum.html.it/forum/showthrea...hreadid=748062
ma non sapevo se eri ancora di buon cuore![]()
Grazie, mi hai tolto un dubbio![]()
Pietro
naturalmente un grazie anche a Michele,![]()
Pietro
si si... sono ancora di buon cuore....Originariamente inviato da pietro09
Confessola domanda è nata leggendo una tua risposta:
http://forum.html.it/forum/showthrea...hreadid=748062
ma non sapevo se eri ancora di buon cuore![]()
Grazie, mi hai tolto un dubbio![]()
![]()
ciao![]()
«Se leggi dimentichi, se vedi capisci, se fai impari» Piaget
Senti, ne aprofittoOriginariamente inviato da Mackey
si si... sono ancora di buon cuore....![]()
ciao![]()
Vorrei imparare la gestione degli eventi anche su mozilla.
Mi piacerebbe avere qualche link a riguardo
Ciao e grazie![]()
Pietro
«Se leggi dimentichi, se vedi capisci, se fai impari» Piaget
Sei stato molto gentile,Originariamente inviato da Mackey
ok
http://www.mozilla.org/docs/dom/domr..._el_ref31.html
http://www.w3.org/TR/DOM-Level-2-Events/events
ciaograzie
![]()
Pietro