Maison > Article > interface Web > Explication détaillée des exemples de déclaration de fonction, de promotion, de duplication et de suppression des bases des fonctions javascript
Déclaration de fonction
Utilisez le mot-clé function, suivi d'un ensemble de paramètres et le corps de la fonction
function funcname([arg1 [,arg2 [...,argn]]]){ statement; }
funcname est l'identifiant du nom de fonction à déclarer. La liste des paramètres est placée entre parenthèses après le nom de la fonction, séparés par des virgules. Lors de l'appel d'une fonction, ces identifiants font référence aux paramètres réels passés dans la fonction
[Note] Les accolades dans l'instruction de fonction sont obligatoires, ce qui est le même que le bloc d'instruction utilisé dans les boucles while et autres instructions . Différemment, même si le corps de la fonction ne contient qu'une seule instruction, elle doit toujours être placée entre accolades
function test()//SyntaxError: Unexpected end of input function test(){};//不报错 while(true);//不报错
Promotion
Dans le troisième article de la série scope, il a été mentionné Function. déclaration hoisting (hoisting), le nom de la fonction et le corps de la fonction sont hissés
foo(); function foo(){ console.log(1);//1 }
La raison pour laquelle l'extrait de code ci-dessus peut afficher 1 sur la console est que la déclaration de fonction foo() est hissée, comme indiqué ci-dessous :
function foo(){ console.log(1); } foo();
Duplication
La déclaration en double d'une variable est inutile, mais une déclaration en double d'une fonction écrasera la déclaration précédente (qu'il s'agisse d'une déclaration de variable ou de fonction)
//变量的重复声明无用var a = 1; var a; console.log(a);//1
//由于函数声明提升优先于变量声明提升,所以变量的声明无作用 var a; function a(){ console.log(1); } a();//1
//后面的函数声明会覆盖前面的函数声明 a();//2 function a(){ console.log(1); } function a(){ console.log(2); }
Par conséquent, vous devez éviter les déclarations répétées dans la même portée
Suppression
Comme les déclarations de variables, les variables créées par les instructions de déclaration de fonction ne peuvent pas être supprimées
function foo(){ console.log(1); } delete foo;//false console.log(foo());//1
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!