Completion requirements
3.8: Les fonctions sont des objets
En JavaScript les fonctions sont des objets. Elles peuvent être mises dans des variables et manipulées comme n'importe quel objet dans une variable.
C'est une différence importante avec d'autres langages (Java, C...).
// Exemple avec une fonction déclarée séparément
var a=exemple_1;
a();
function exemple_1()
{
console.log('Bonjour');
}
// Exemple avec une fonction anonyme
var b=function()
{
console.log("Au-revoir");
};
b();
Une fonction étant un objet, on peut la passer en argument à une autre fonction.
C'est ce qu'on a fait souvent au TP-1 avec jQuery:
$('img').mousemove(function(event)
{
$('#affiche-x').text(event.pageX);
$('#affiche-y').text(event.pageY);
});
On crée une fonction anonyme (function(event){...}) et on la passe directement en argument à la fonction .mousemove()Il faut s'y habituer... c'est vraiment très utilisé en JavaScript.