Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Funzioni con argomenti opzionali

    Come posso definire degli argomenti opzionali di funzioni javascript, in modo che possa chiamare, ad esempio popup(url), ma anche popup(url, w, h)?
    http://www.myxperience.net
    Ossigeno Scripter

  2. #2
    Utente bannato
    Registrato dal
    Mar 2005
    Messaggi
    136

    Re: Funzioni con argomenti opzionali

    Originariamente inviato da GiorgioSironi
    Come posso definire degli argomenti opzionali di funzioni javascript, in modo che possa chiamare, ad esempio popup(url), ma anche popup(url, w, h)?
    Non vorrei dirti una castroneria, ma non mi risulta che in js si possa fare o l'ovveride della funzione o passare dei parametri optionali.

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Invece si puo`.

    Nel caso piu` semplice:
    codice:
    function popup(url, w, h) {
      if (!w) w = LARGH DEFAULT;
      if (!h) h = ALT EFAULT;
      ...
    }
    In questo forum trovi anche altri esempi: in particolare quasi tutti gli script di DW (quelli che iniziano con MM_).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  4. #4
    Utente bannato
    Registrato dal
    Mar 2005
    Messaggi
    136
    Originariamente inviato da Mich_
    Invece si puo`.
    Porca paletta, questa non la sapevo

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    javascript è un poco strano. Non è necessario che una funzione venga chiamata con la stessa firma della dichiarazione Al limite puoi fare:

    mia_funzione(par1, par2);

    function mia_funzione()
    {
    /*
    qui si può recuperare il vettore dei parametri passati

    */
    }
    Pietro

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    una sfumatura, Pietro
    nel caso inverso, basandoti sul vettore della funzione avresti una sorpresa
    codice:
    <script language="JavaScript" type="text/javascript">
    <!--
    function funzione(val1,val2,val3){
    	alert(arguments[3]);
    	alert(funzione[3]);
    }
    funzione('a','b','c','d')
    //-->
    </script>
    mentre la proprieta' arguments riporta gli argomenti realmente passati alla funzione

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da Xinod
    una sfumatura, Pietro
    nel caso inverso, basandoti sul vettore della funzione avresti una sorpresa
    codice:
    <script language="JavaScript" type="text/javascript">
    <!--
    function funzione(val1,val2,val3){
    	alert(arguments[3]);
    	alert(funzione[3]);
    }
    funzione('a','b','c','d')
    //-->
    </script>
    mentre la proprieta' arguments riporta gli argomenti realmente passati alla funzione
    Ma dove le scovi queste cose? Non sapevo proprio che si potesse fare funzione.length, funzione[2]

    Comunque, funziona con FireFox, in IE, funzione.length dà correttamente 3, mentre funzione[0] dà undefined


    Sono convinto che sia necessario usare un linguaggio come è fatto, ma che sia strano è proprio vero

    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.