Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it L'avatar di Threepwood
    Registrato dal
    Feb 2003
    Messaggi
    2,107

    Come funziona la for(a in b) ?

    Salve a tutti!

    Sto sistemando uno script e trovo una for di questo tipo:

    for (a in b)

    Come viene elaborata la for, visto che non trovo nulla in giro?

    (... anche perchè cercare "js for syntax" in google trova tutto e niente ...)
    Guybrush Threepwood

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    se hai un oggetto "b" che ha delle proprieta puoi usare quella sintassi
    (e ad ogni iterazione lavori sulla proprietà "a")

    codice:
    <script type="text/javascript">
    // <![CDATA[
    
     var a = new Object();
     a.prop1 = 'ciao';
     a.prop2 = 'a';
     a.prop3 = 'tutti';
    
    
     for (prop in a) {
        alert(a[prop]);
     }
    
    // ]]>
    </script>
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    ma non sarà questo?

    for each (variable in object)
    statement


    :master:
    Pietro

  4. #4
    Utente di HTML.it L'avatar di Threepwood
    Registrato dal
    Feb 2003
    Messaggi
    2,107
    La riga reale è questa:

    codice:
    for(nI in aDel) {
    inFormat=inFormat.replace(eval("/"+aDel[nI]+"/g"),aDel[nI]);
    }
    nDel contiene quella che sembrerebbe una regex ("\n$...")

    Però non ho capito bene il funzionamento operativo della for.

    Cioè, la for normale (for i=0;i++;i<50) ripete un'operazione DA-A con un incremento definito.

    QUesta invece come gira?
    Guybrush Threepwood

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    e va bene! sono proprio indietro non lo sapevo

    http://developer.mozilla.org/en/docs...ments:for...in
    Pietro

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da Threepwood
    QUesta invece come gira?
    fino a che non hai esaurito le proprietà dell oggetto... prova il codice che ho postato più su
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  7. #7
    Utente di HTML.it L'avatar di Threepwood
    Registrato dal
    Feb 2003
    Messaggi
    2,107
    Ecco perchè non ci capivo... programmazione a oggetti

    Grazie, ora ci lavoro un po... ho capito il senso
    Guybrush Threepwood

  8. #8
    Ciao.
    Per la cronaca posto anche questo
    uso di in
    Codice PHP:
    if('date' in result){} 
    dove result è un obj e date è una proprietà
    di quest'ultimo.

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  9. #9
    Questo è un po OT ma lo
    posto sempre per la cronaca
    mai e poi mai estendere Object
    fate una prova con questo codice
    Codice PHP:
    <script language="JavaScript" type="text/javascript" src="js/json.js"></script>
    <script language="JavaScript" type="text/JavaScript">
    var result= [{"id":"1","date":"1175625117","content":"pippolo"}];
    for(var i=0;i<result.length;i++){
        for(var prop in result[i]){
            alert(result[i][prop]);
        }
    }
    </script> 
    VVoVe:
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  10. #10
    Verissimo, tanto che in un mio script avevo adottato un approccio del genere per poi pentirmene...

    A parte questo, come ci fa notare And3a il problema è facilmente risolvibile.
    Ora non ricordo bene come fosse lo script ma il principio è più o meno questo:

    codice:
    for(var i in oggetto)
     {
       if(!Object.prototype[i]) { alert(i+" = "+oggetto[i]); }
     }
    EDIT: trovato il link http://webreflection.blogspot.com/20...afe.html#links

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.