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

Explication détaillée des exemples de déclaration de fonction, de promotion, de duplication et de suppression des bases des fonctions javascript

伊谢尔伦
伊谢尔伦original
2017-07-25 09:50:451658parcourir

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn