Heim  >  Artikel  >  Web-Frontend  >  Tutorial zum Definieren formaler Parameter in einer Funktion, aber ohne Übergabe tatsächlicher Parameter

Tutorial zum Definieren formaler Parameter in einer Funktion, aber ohne Übergabe tatsächlicher Parameter

零下一度
零下一度Original
2017-06-25 09:19:282737Durchsuche

1. Formale Parameter in einer Funktion zu definieren, aber keine tatsächlichen Parameter zu übergeben, ist gleichbedeutend mit dem Definieren einer Variablen, aber ohne Zuweisen eines Werts, daher ist a im Folgenden undefiniert

1 function test(a){2     console.log(a)//undefined3 };4 test();

2. In IIFE wird das Fenster als tatsächlicher Parameter übergeben, wodurch die globale Suche nach dem Fenster bei der Ausführung des Codes vermieden wird, wodurch die Effizienz verbessert wird oben Das Definieren eines formalen Parameters in einer Funktion ist gleichbedeutend damit, ihn zu definieren, aber keinen Wert zuzuweisen, daher ist undefiniert in dieser sofort ausgeführten Funktion immer noch undefiniert. Selbst wenn der Wert von undefiniert global geändert wird, hat dies keine Auswirkungen auf undefiniert in dieser selbstausführenden Funktion. In Chrome 59 und höher sowie Firefox 53 und höher darf undefiniert jedoch nicht geändert werden und alle Ausgaben ist undefiniert. Unter IE8 können undefinierte Werte geändert werden, und die Ausgabe ist 8 und undefiniert, sodass durch die Übergabe formaler Parameter die Auswirkungen extern geänderter Variablen auf die interne Funktion in verschiedenen Browsern weitestgehend sichergestellt werden können. Vor IIFE müssen Klammern stehen, andernfalls wird ein Fehler gemeldet.

1 //在ie8中2 var undefined = 8;3 (function( window , undefined ){4     console.log(window.undefined) //85     console.log(undefined); //undefined6 })(window);
//在chrome和Firefox中var undefined = 8;
(function( window , undefined ){
    console.log(window.undefined) //undefinedconsole.log(undefined); //undefined})(window)

Das obige ist der detaillierte Inhalt vonTutorial zum Definieren formaler Parameter in einer Funktion, aber ohne Übergabe tatsächlicher Parameter. 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