返回内部函数,内部函数引用外部函数的变量,使得外部函数的变量会在内存中一直存在(也使得这个变量只能被内部函数使用,即封装),这就叫“闭包”。类似下面的程序
<script type="text/javascript">
function say667() {
// Local variable that ends up within closure
var num = 666;
var sayAlert = function() { alert(num); }
num++;
return sayAlert;
}
var sy = say667();
sy();
alert(sy);
</script>