Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di erme2
    Registrato dal
    Oct 2002
    Messaggi
    177

    [javascript] Alternativa ad eval()

    Mentre girovagavo nel forum ho trovato questa discussione nella quale Mich_ dice:
    Originariamente inviato da Mich_
    eval() e` sintassi deprecata.

    Per cui e` perfettamente compatibile con i browser vecchi. E` riconosciuto da molti i browser attuali, ma non e` garantito; soprattutto non e` garantito che funzioni nei browser futuri.

    E comunque rallenta molto l'esecuzione (e` molto dispendiso in termini di risorse).
    siccome io l' ho usata abbastanza spesso perchè ignoravo questa situazione, come posso cominciare a sostituirla?

    Ciao e Grazie
    eRMéS! RM98!
    "...è mai possibile oh porco di un cane, che le avventure in codesto reame, debban risolversi tutte con grandi puttane!..." - (Carlo Martello ritorna dalla battaglia di Poitiers -Fabrizio De Andrè/Paolo Villaggio)

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    eval() veniva usata per molte cose.

    La situazione piu` frequente credo sia del tipo:
    var pippo = eval("document"+formname+"."+fieldname+".value);

    che si trasforma in:
    var pippo = document.forms(formname).elements(fieldname).value ;
    oppure:
    var pippo = document.getElementById(field_id).value;
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    dipende dal contesto erme,
    se proponi qualche esempio di utilizzo ti forniamo la sintassi + adatta

  4. #4
    Utente di HTML.it L'avatar di erme2
    Registrato dal
    Oct 2002
    Messaggi
    177
    Originariamente inviato da Mich_
    eval() veniva usata per molte cose.

    La situazione piu` frequente credo sia del tipo:
    var pippo = eval("document"+formname+"."+fieldname+".value);

    che si trasforma in:
    var pippo = document.forms(formname).elements(fieldname).value ;
    oppure:
    var pippo = document.getElementById(field_id).value;
    perfetto la situazione è propio questa!

    una sola cosa se scrivo :
    codice:
    document.forms(formname).elements(fieldname).value;
    mentre con explorer è tutto ok firefox mi da questo errore
    codice:
    Errore: opener.document.forms is not a function
    File sorgente: http://127.0.0.1/nome_sito/file.js
    Riga: 106
    ho risolto scrivendo:
    codice:
    document.forms[formname].elements[fieldname].value;
    con le parentesi quadre funziona sia con Explorer che con Firefox

    Ciao e Grazie
    eRMéS! RM98!
    "...è mai possibile oh porco di un cane, che le avventure in codesto reame, debban risolversi tutte con grandi puttane!..." - (Carlo Martello ritorna dalla battaglia di Poitiers -Fabrizio De Andrè/Paolo Villaggio)

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.