Heim  >  Artikel  >  Web-Frontend  >  Ausführliche Erläuterung der Funktionsdeklarations-, Heraufstufungs-, Duplizierungs- und Löschbeispiele der Grundlagen von Javascript-Funktionen

Ausführliche Erläuterung der Funktionsdeklarations-, Heraufstufungs-, Duplizierungs- und Löschbeispiele der Grundlagen von Javascript-Funktionen

伊谢尔伦
伊谢尔伦Original
2017-07-25 09:50:451618Durchsuche

Funktionsdeklarationsanweisung

Verwenden Sie das Schlüsselwort function, gefolgt von einer Reihe von Parametern und dem Funktionskörper

function funcname([arg1 [,arg2 [...,argn]]]){
    statement;
}

funcname ist die Kennung des zu deklarierenden Funktionsnamens. Die Parameterliste wird in Klammern nach dem Funktionsnamen eingeschlossen und durch Kommas getrennt. Beim Aufruf einer Funktion beziehen sich diese Bezeichner auf die tatsächlichen Parameter, die an die Funktion übergeben werden

[Hinweis] Die geschweiften Klammern in der Funktionsanweisung sind erforderlich, was dem Anweisungsblock entspricht, der in While-Schleifen und anderen Anweisungen verwendet wird . Anders gesagt: Auch wenn der Funktionskörper nur eine Anweisung enthält, muss diese dennoch in geschweifte Klammern eingeschlossen werden.

function test()//SyntaxError: Unexpected end of input
function test(){};//不报错
while(true);//不报错

Promotion

Im dritten Artikel der Scope-Reihe wurde die Funktion erwähnt Beim Heben der Deklaration werden der Funktionsname und der Funktionskörper angehoben

foo();
function foo(){
    console.log(1);//1
}

Der Grund, warum das obige Codefragment 1 auf der Konsole ausgeben kann, liegt darin, dass die Funktionsdeklaration foo() angehoben wird, wie unten gezeigt :

function foo(){
    console.log(1);
}
foo();

Duplikation

 Eine doppelte Deklaration einer Variablen ist nutzlos, aber eine doppelte Deklaration einer Funktion überschreibt die vorherige Deklaration (unabhängig davon, ob es sich um eine Variablen- oder Funktionsdeklaration handelt)

//变量的重复声明无用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);
}

Daher sollten wiederholte Deklarationen

Löschen

im gleichen Gültigkeitsbereich vermieden werden. Variablen, die durch Funktionsdeklarationsanweisungen erstellt wurden, können nicht gelöscht werden

function foo(){
    console.log(1);
}
delete foo;//false
console.log(foo());//1

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Funktionsdeklarations-, Heraufstufungs-, Duplizierungs- und Löschbeispiele der Grundlagen von Javascript-Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn