[Javascript]関数宣言vs関数式(Javascriptの理解と書き出し)-3
5364 ワード
今度はどう見ても何の考えもない.スキップ可能な関数宣言文と関数式について説明します.
関数宣言とは、次の形式を指します.
JavaScriptエンジンが関数を生成するタイミングは異なります.
関数式は、実際に実行されたストリームが関数に到達したときに関数を生成します.
関数宣言を定義する前に、関数宣言を呼び出すこともできます.
関数宣言?式。
関数宣言とは、次の形式を指します.
function sum(a, b) {
return a + b;
}
次に、関数式は次のようになります.const sum = function(a, b) {
return a + b;
}
何が違うの。
JavaScriptエンジンが関数を生成するタイミングは異なります.
関数式は、実際に実行されたストリームが関数に到達したときに関数を生成します.
関数宣言を定義する前に、関数宣言を呼び出すこともできます.
sum(1, 2); // 3
function sum(a, b) {
return a + b;
}
sum(1, 2); // error!
const sum = function (a, b) {
return a + b;
}
もう1つは、厳密モードでは、関数宣言がコードブロック内にある場合、その関数はブロック内の任意の場所でアクセスできますが、ブロック外で関数にアクセスできません.if (true) {
function welcome(){
console.log('Welcome!');
}
}
welcome(); // error!
もちろん、関数式は、ブロックの外で変数を事前に宣言することができます.let welcome;
if (true) {
welcome = function() {
console.log('Welcome!');
}
}
welcome(); // Welcome!
Reference
この問題について([Javascript]関数宣言vs関数式(Javascriptの理解と書き出し)-3), 我々は、より多くの情報をここで見つけました https://velog.io/@winz/Javascript-함수-선언문-vs-함수-표현식テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol