Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130

    possibile errore in tutorial sul module pattern?

    in here : http://javascript.html.it/guide/lezi...embri-privati/

    l'autore scrive:

    Questi membri infatti hanno uno scope limitato ed esistono solo all'interno della funzione che definisce l'oggetto. Essi non possono essere disponibili proprio perché non c'è modo di riferirsi a questa funzione in quanto non viene salvata in nessuna variabile ma viene eseguita subito. Questi membri privati però sono accessibili all'interno di metodi e proprietà pubbliche in quanto condividono lo scope tra di loro. Ecco un esempio:
    codice:


    codice:
    NameModule = function() {
      name = "Alberto";
      
      getName = function() { return this.name; }
      
      return {
        alertName: function() { alert(getName()); }
      }
    }
    
    var nm = NameModule;
    nm.alertName();
    E' tutto sbagliato! Intanto NameModule bisogna eseguirlo perche' ritorni qualche cosa. Senno e solo copiato per riferimento into nm e non andiamo da nessuna parte. Poi vale la pena di aggiungere un po di "var" davanti a name e getName senno vengono attaccati a window e si ottiene il contrario del motivo per cui il module pattern e stato inventato (creare privatezza dove il linguaggio non l'ha prevista).

    Come dice il vecchio Doug "programmare e gia' abbastanza difficile" ...

    Lo dite voi alla redazione?

    La cosa buffa e' che l'errore e ripetuto dappertutto nel tutorial.

    p.s.: cumpa' ... ascoltata o nourdine ... a bibbia rimane sempre chista acca: http://forum.html.it/forum/showthrea...readid=1014613

  2. #2
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130
    Vabbe ... lasciamolo cosi come sta!

    Another nail in the JavaScript's coffin ... amen

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    si', ci sono errori evidenti in tutta quella sezione della guida
    segnalo alla redazione
    grazie

  4. #4
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130
    prego

  5. #5
    Ciao a tutti,

    anzitutto grazie mille per le segnalazioni, sono sempre utilissime e servono a migliorare. In questo caso, l'unico errore è quello di non aver chiuso la dichiarazione della function con le parentesi tonde. Ho provveduto a sistemare il refuso ed ora l'esempio fa il suo dovere.

    Non esitate a segnalare altri errori se ne trovate.
    _____________________________________
    Fatti non foste a viver come bruti...

  6. #6
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130
    Originariamente inviato da andimar
    Ciao a tutti,

    anzitutto grazie mille per le segnalazioni, sono sempre utilissime e servono a migliorare. In questo caso, l'unico errore è quello di non aver chiuso la dichiarazione della function con le parentesi tonde. Ho provveduto a sistemare il refuso ed ora l'esempio fa il suo dovere.

    Non esitate a segnalare altri errori se ne trovate.
    no guarda che mancano anche i var nell proprieta' "private" del module... senno vengono attaccate a window e addio privacy ...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.