En js, vous pouvez utiliser le mot-clé function ou la fonction Function() pour déclarer et définir des fonctions. La syntaxe est "function funName([parameter list]){...}" ou "var funName = new Function([parameter list". liste, corps ])".
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.
Déclaration et définition des fonctions en JavaScript
1. Utilisez le mot-clé de fonction
Syntaxe :
function funName([参数列表]) { statements }
funName est le nom de la fonction, qui doit être un identifiant JavaScript légal comme le nom de la variable. Après le nom de la fonction se trouve une liste de paramètres entre parenthèses et séparés par des virgules. Les paramètres sont facultatifs et il n’y a pas de limite quant au nombre.
En tant qu'identifiants, les paramètres ne sont accessibles que dans le corps de la fonction et les paramètres sont des membres privés de la portée de la fonction. Lors de l'appel d'une fonction, transmettez une valeur à la fonction, puis utilisez des paramètres pour obtenir la valeur transmise en externe et intervenez dans l'exécution de la fonction dans le corps de la fonction.
Après les parenthèses se trouve une accolade. L'instruction contenue dans l'accolade est le contenu principal de la structure du corps de la fonction. Dans le corps de la fonction, les accolades sont essentielles. Sans accolades, JavaScript générera une erreur de syntaxe.
Exemple
L'instruction de fonction doit contenir le nom de la fonction, des parenthèses et des accolades, et d'autres codes peuvent être omis, de sorte que le corps de la fonction le plus simple est une fonction vide.
function funName() {} //空函数
Si vous utilisez des fonctions anonymes, vous pouvez omettre le nom de la fonction.
function () {} //匿名空函数
L'instruction var et l'instruction function sont toutes deux des instructions de déclaration. Les variables et fonctions qu'elles déclarent sont analysées lorsque JavaScript est précompilé, également connu sous le nom de promotion de variable et de promotion de fonction. Pendant la période de pré-compilation, le moteur JavaScript crée un contexte pour chaque fonction, définit un objet variable et enregistre tous les paramètres formels, variables privées et fonctions imbriquées dans la fonction en tant qu'attributs sur l'objet variable.
2. Utilisez la fonction Function()
Utilisez le constructeur Function() pour générer rapidement des fonctions. L'utilisation spécifique est la suivante : les types de paramètres de
var funName = new Function([参数列表,body]);
Function() sont tous des chaînes. Le corps représente l'instruction de structure de fonction de la fonction créée, et les instructions de corps sont séparées par des points-virgules.
Exemple 1
Vous pouvez omettre tous les paramètres et transmettre uniquement une chaîne pour représenter le corps de la fonction.
var f = new Function ("a", "b", "return a+b"); //通过构造函数来克隆函数结构
Dans le code ci-dessus, f est le nom de la fonction créée. La même fonction est définie et des fonctions avec la même structure peuvent être conçues à l'aide de l'instruction de fonction.
function f(a, b) { //使用function语句定义函数结构 return a + b; }
Exemple 2
Utilisez le constructeur Function() pour créer une structure de fonction vide sans spécifier de paramètres.
var f = new Function(); //定义空函数
Exemple 3
Dans les paramètres du constructeur Function(), p1~pn est une liste de noms de paramètres, c'est-à-dire que p1 peut non seulement représenter un paramètre, mais également une liste de paramètres séparés par des virgules. Les méthodes de définition suivantes sont équivalentes.
var f = new Function("a", "b", "c", "return a+b+c"); var f = new Function("a, b, c", "return a+b+c"); var f = new Function("a,b", "c", "return a+b+c");
L'utilisation du constructeur Function() n'est pas très courante car le corps d'une fonction contient généralement beaucoup de code. Si ces codes sont transmis sous forme de chaîne d'une seule ligne, la lisibilité du code sera mauvaise.
L'utilisation du constructeur Function() peut créer des fonctions de manière dynamique. Cela ne limite pas les utilisateurs au corps de fonction pré-déclaré par l'instruction de fonction. L'utilisation du constructeur Function() vous permet d'utiliser la fonction comme une expression plutôt que comme une structure, elle est donc plus flexible à utiliser. L'inconvénient est que le constructeur Function() est compilé pendant l'exécution, l'efficacité d'exécution est très faible et son utilisation n'est généralement pas recommandée.
【Recommandations associées : Tutoriel d'apprentissage Javascript】
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!