序文: 1. クロージャとは何ですか? 簡単に言えば、クロージャとは、スコープが別の関数内のローカル変数にアクセスできるという特性を持つ関数です。 以下に簡単な例を示します。 たとえば、関数があり、その中にローカル変数を定義しているとします。他のスコープがこのローカル変数にアクセスできる場合、クロージャが生成されます。そこで、この関数内に別の関数を定義して、内部の関数スコープが外部の関数内のローカル変数にアクセスできるかどうかを確認します。 関数f1(){ var 数値 = 10; 関数f2(){ console.log(数値); } f2(); } f1(); 印刷された結果は次のとおりです。 値が正常に出力され、クロージャが生成されていることがわかります。 次のように、f2 関数の呼び出しを f1 関数の戻り値に変更し、関数の外部で f1 関数を呼び出します。 関数f1(){ var 数値 = 10; 関数f2(){ console.log(数値); } f2() を返す } var f = f1(); 関数f(); この時点では、 f1 の外部のスコープがその内部関数の変数にアクセスするのと同じです。印刷結果は次のとおりです。 内部のローカル変数もここで使用でき、クロージャが生成されていることがわかります。 したがって、次のように結論付けることができます。
2. 閉鎖の役割関数内で定義されたローカル変数は関数内でのみ使用でき、使用が終了すると破棄されることはご存じのとおりです。ただし、クロージャを使用すると、このローカル変数は関数の外部で使用され、外部の呼び出し元が呼び出しを終了するまで破棄されません。したがって、クロージャの役割は変数のスコープを拡張することです。 JavaScript クロージャに関するこの記事はこれで終わりです。JavaScript クロージャについてさらに詳しく知りたい方は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: HTML Selectは、デフォルトの選択を設定するためにselected属性を使用します。
>>: CSS でショートカット プロパティを記述する際は、トラブルの順序に注意してください (落とし穴を避けるため)
目次CentOS7環境での設定コマンド手順1. DHCP設定ファイルを設定する2. グローバル構成を...
MySQL でテーブルスペースの断片化を解消する詳細な例断片化の原因(1)テーブルのストレージは断片...
iframe の src を 'about:blank' に設定した後、"...
環境: 1. Windows Server 2016 Datacenter 64 ビット 2. SQ...
1. 遷移属性の理解1. transition 属性は、次の 4 つの遷移プロパティを設定するために...
序文ますます便利になった今日のインターネット社会では、さまざまなインターネット ランサムウェア ウイ...
質問Alibaba Cloud イメージを使用して Docker をインストールすると、次の図に示す...
MYSQL でよく使用されるクエリ コマンド: mysql> select version()...
目次データ列を分離するプレフィックスインデックスとインデックスの選択性データ列を分離するMySQL ...
Windows で Nginx を使用するには、Nginx サービスの起動、停止、Nginx のリロ...
<br />関連記事: Web スキル: 複数の IE バージョンを共存させるソリューシ...
この記事の例では、ファイルアップロード機能を実現するためのjquery+springbootの具体的...
目次概要延長は必要ですか?スロットJavaScript ユーティリティ関数拡張コンポーネントの複数の...
システム環境: centos7.4 1. データベースがインストールされているかどうかを確認します。...
div がネストされているときに margin が機能しない問題の解決策を次に示します。さて、マージ...