>  기사  >  웹 프론트엔드  >  자바스크립트 클로저

자바스크립트 클로저

巴扎黑
巴扎黑원래의
2016-12-10 09:16:231168검색

개념:

클로저는 다른 함수의 내부 변수를 읽을 수 있는 함수입니다.

클로저 메서드 만들기:

함수 내부에 또 다른 함수를 만들고 다른 함수를 통해 이 함수의 지역 변수에 액세스합니다.

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으로 문의하세요.
이전 기사:js 클로저와 루프다음 기사:js 클로저와 루프