ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptクロージャ

JavaScriptクロージャ

巴扎黑
巴扎黑オリジナル
2016-12-10 09:16:231215ブラウズ

コンセプト:

クロージャは、他の関数の内部変数を読み取ることができる関数です。

クロージャーメソッドを作成します:

関数内に別の関数を作成し、別の関数を通じてこの関数のローカル変数にアクセスします。

Js コード

function box(){  
  var user ='Zhu';  
  return function(){  
    return user;  
  }  
}  
var b = box();  
console.log(b())  
console.log(box()())




クロージャを使用する利点:
ローカル変数をメモリ内に常駐させて、グローバル変数の汚染を回避できます。
クロージャを介してローカル変数を蓄積する:

Jsコード

function func(){  
  var num=100;  
  incr=function(){// 未使用关键字var , 该函数为全局  
     num+=1;  
    return num;  
  }  
  var m1= function(){  
    console.log(num)  
  }  
  return m1;  
}  
  
var m1 = func();  
m1();//100  
console.log(incr())//101。。通过全局函数操作局部变量  
m1();//101





短所:
クロージャ内のスコープによって返されるローカル変数リソースはすぐに破棄されリサイクルされないため、使用への移行が簡単です。クロージャーによりパフォーマンスが低下します。


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