Closure
10889 ワード
クローズドテレビ
-MDN
まず、モジュールはJavaScriptの固有概念ではありません
:JavaScriptエンジンは、親スキャン
例1
const x = 1;
function foo() {
const x = 10;
function boo() {
console.log(x); // 10
}
boo();
}
foo();
例2const x = 1;
function foo() {
const x= 10;
bar();
}
function bar() {
console.log(x);
}
foo(); //
bar();//
エンクロージャの簡単な例
function outer(){
const name = 'KOP';
console.log(name)
}
console.log(name) //error
function outer(){
const name = 'KOP';
console.log(name)
return function inner(){
const greeting = 'hello!'
console.log(greeting,name)
}
}
const getKOP = outer()
getKOP() //KOP
なぜロッカーを使うのですか?
例:
// 전역 변수
let num = 0
const increase = function () {
return ++num;
}
console.log(increase()); // 1
console.log(increase()); // 2
console.log(increase()); // 3
const increase = (function () {
let num = 0;
// 클로저
return function () {
return ++num;
};
}());
console.log(increase());// 1
console.log(increase());// 2
console.log(increase());// 3
上記のコードReference
この問題について(Closure), 我々は、より多くの情報をここで見つけました https://velog.io/@nulee1000/Closureテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol