Appel de la fonction JavaScript
- Page précédente Paramètres de fonction JS
- Page suivante Appel de fonction JS
Le code interne d'une fonction JavaScript est exécuté lorsque “quelque chose” l'appelle.
Appeler une fonction JavaScript
Lorsque la fonction estDéfinirlorsque, le code interne de la fonction ne sera pas exécuté.
Lorsque la fonction estAppellorsque, le code interne de la fonction sera exécuté.
L'appel d'une fonction peut également être dit “démarrer une fonction” ou “exécuter une fonction”.
Dans ce tutoriel, nous utilisons “Appel”。
Appeler une fonction sous forme de fonction
Instance
function myFunction(a, b) { return a * b; } myFunction(10, 2); // Retournera 20
Ces fonctions n'appartiennent à aucun objet. Mais dans JavaScript, il existe toujours un objet global par défaut.
Dans HTML, l'objet global par défaut est la page HTML elle-même, toutes les fonctions ci-dessus appartiennent à la page HTML.
Dans le navigateur, cet objet de page est la fenêtre du navigateur. La fonction ci-dessus devient automatiquement une fonction de fenêtre.
myFunction() et window.myFunction() sont la même fonction :
Instance
function myFunction(a, b) { return a * b; } window.myFunction(10, 2); // Retournera également 20
C'est une méthode courante d'appel de fonction, mais ce n'est pas une bonne habitude.
Les variables globales, méthodes ou fonctions globales peuvent facilement produire des conflits de noms et des vulnérabilités dans l'objet global.
this keyword
En JavaScript, c'est appelé this
L'objet de la chose, signifie l'objet "possédant" le code courant.
this
la valeur, lorsqu'elle est utilisée dans une fonction, est l'objet "possédant" cette fonction.
Veuillez noter this
Ce n'est pas une variable. C'est une keyword. Vous ne pouvez pas changer this
la valeur.
l'objet global
Lorsqu'un objet est appelé sans propriétaire d'objet,this
la valeur devient l'objet global.
Dans un navigateur web, l'objet global est l'objet navigateur.
Cet exemple utilise this
la valeur retourne cet objet window :
Instance
var x = myFunction(); // x deviendra l'objet window function myFunction() { return this; }
Appeler une fonction en tant que fonction globale entraînera this
la valeur devient l'objet global.
Utiliser l'objet window en tant que variable peut facilement faire crasher le programme.
Appeler une fonction en tant que méthode
En JavaScript, vous pouvez définir une fonction comme méthode d'objet.
L'exemple suivant crée un objet (myObject), avec deux propriétés (firstName et lastName), et une méthode (fullName) :
Instance
var myObject = { firstName: "Bill", lastName: "Gates", fullName: function () { return this.firstName + " " + this.lastName; } } myObject.fullName(); // Retourne "Bill Gates"
La méthode fullName est une fonction. Cette fonction appartient à l'objet. myObject est le propriétaire de la fonction.
est appelé this
L'objet de la chose, est l'objet "possédant" ce code JavaScript. Dans cet exemple,this
la valeur est myObject.
Essayons ! Modifiez cette méthode fullName pour retourner this
la valeur :
Instance
var myObject = { firstName: "Bill", lastName: "Gates", fullName: function () { return this; } } myObject.fullName(); // Retourne [object Object] (l'objet propriétaire)
Appeler une fonction en tant que méthode d'objet entraînera this
La valeur deviendra l'objet lui-même.
Appeler une fonction via le constructeur de la fonction
Si le mot-clé est utilisé avant l'appel d'une fonction new
Si le mot-clé est utilisé, alors c'est un appel de constructeur.
Il semble que vous créiez une nouvelle fonction, mais comme les fonctions JavaScript sont des objets, vous créez en réalité un nouveau objet :
Instance
// C'est le constructeur de la fonction : function myFunction(arg1, arg2) { this.firstName = arg1; this.lastName = arg2; } // Un nouveau objet a été créé : var x = new myFunction("Bill", "Gates"); x.firstName; // Retournera "Bill"
L'appel du constructeur créera un nouveau objet. Ce nouveau objet héritera des propriétés et des méthodes de son constructeur.
Dans le constructeur this
Le mot-clé n'a pas de valeur.
this
La valeur deviendra un nouvel objet créé lors de l'appel de la fonction.
- Page précédente Paramètres de fonction JS
- Page suivante Appel de fonction JS