Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116

    differenze di codice javascript

    vorrei sapere per cortesia, se vi sono differenze tra questi due codici:
    1) if(typeof(e) == "undefined")

    2) if(e == undefined)

    Grazie
    Pietro

  2. #2
    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

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    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

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente 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 + indicata
    Confesso la 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

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    naturalmente un grazie anche a Michele,
    Pietro

  6. #6
    Originariamente inviato da pietro09
    Confesso la 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
    si si... sono ancora di buon cuore....
    ciao
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da Mackey
    si si... sono ancora di buon cuore....
    ciao
    Senti, ne aprofitto Vorrei imparare la gestione degli eventi anche su mozilla.
    Mi piacerebbe avere qualche link a riguardo

    Ciao e grazie
    Pietro

  8. #8

  9. #9
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Sei stato molto gentile, grazie
    Pietro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.