ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript_javascript スキルでクロージャーを作成する 2 つの方法の長所、短所、および相違点の分析

JavaScript_javascript スキルでクロージャーを作成する 2 つの方法の長所、短所、および相違点の分析

WBOY
WBOYオリジナル
2016-05-16 15:53:411124ブラウズ

JavaScript でクロージャを作成するには、一般的に 2 つの方法が使用されます。

コンストラクターメソッド:

new function() { 
var 变量... 
} 

インライン実行方法:

(function() { 
var 变量... 
})(); 

JavaScript の内部動作メカニズムにおけるこれらの違いは何ですか?どちらの方法で作成するのが良いでしょうか?他の方法で作成されたクロージャーと比べて、どのような利点がありますか?

私は次のように理解しています:

違い:

第一: サブメソッドは変数を共有できます
2 番目: 内部サブメソッド共有変数

比較:

インラインの方が良いと思います;

利点:

一般に、インライン作成にはオンデマンドのメモリが必要です。これは、ローカルで実行される変数のみがメモリ内にあるため、予期しない相互作用のリスクを最小限に抑えるために関連コードと依存コードを編成し、すべてのメソッド実行変数をメモリに格納する必要があるためです。 Web ページのパフォーマンスを低下させるため、終了する前に変数を削除することをお勧めします

もちろん、これは私の個人的な理解にすぎません。実際、クロージャを使用すると、特に IE カーネル ブラウザでメモリ リークが発生します。変数を使用した後は、それらを強制終了するのが最善です。

上記がこの記事の全内容です。皆さんに気に入っていただければ幸いです

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。