Appeler une fonction/argument en javascript

Bonjour,
Ma question vas paraitre stupide mais j'ai une grosse lacune la :

Comment appeler une fonction dans les arguments d'une fonction crée ?

Je m'explique .

On peut creer les fonctions comme ça :

function mafonction (argument1,argument2){

}

sauf que je veut que mon argument2 , soit lui meme une fonction.

Comment faire ?

Merci d'avance :)
Configuration: Windows XP
Firefox 2.0.0.16

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    Bonjour,
    +1 pour Ziaaa, tu peux appeler la fonction call() ou apply() :
    Fichier index.html :
    <html>
    	<head>
    		<title>Test CCM</title>
    		<script language="javascript" src="js.js"></script>
    	</head>
    	<body onLoad="fonction(callback, 'parametre')">
    	
    	</body>
    </html>
    
    Fichier js.js :
    <!--
    function fonction(func, param) { 
            //do nothing with the param parameter, but could have done
    	func.call(); //look at call and apply
    }
    
    function callback() {
    	alert('do something here');
    }
    //-->
    


    Cordialement,
    1. au lieu que argument2 soit une fonction, si tu lui demandais de te retourner une valeur qui sera l'argument de la fonction ?
      1. Bonjour

        D'après le manuel de référence du Javascript de chez Sun, les arguments peuvent être des nombres, des chaînes ou des objets. Pas des fonctions.
        Comme un objet a des méthodes qui en fait sont des fonctions, il y a peut-être quelque chose à faire de ce côté là...
        1. en javascript un objet est en fait une fonction.
          du coup tu passes juste le nom de ta fonction en argument, et tu l'exécutes avec un nomDeFonction.apply
      2. selon moi
        function1(){
        instructions
        return argument2
        }
        ta fonction(argument1,argument2){
        }

        logiquement si mes souvenirs st bons ta fonction va chercher argument2 dans la fonction qui lui donne une valeur si tu ne la définis pas toi même
        1. @adaro2000, je n'ai pas compris ton message ^^

          @toto
          Il faudrais que que fasse de la POO alors ?Ca me parais étrange de devoir creer des classesuniquement pour integrer une fonction dans une autre .

          merci pour vos reponses :p