标签:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
//内部私有函数
function a(param){
function b(theinput){
return theinput * 2;
};
return "The result is " + b(param);
}
// console.log(a("10000"));
//返回函数的函数
function t(){
alert(‘A!‘);
return function(){
alert(‘B!‘);
};
}
// t()();
//函数内的函数
var j = function(){
function someSetup(){
var setup = ‘done‘;
}
function actualWork(){
alert(‘work-worky‘);
}
someSetup();
return actualWork;
}();
//闭包函数
var n;
function f(){
var b = ‘b‘;
n = function(){
return b;
}
}
// console.log(f());
// console.log(n()); n在f里面被定义了函数在传到全局作用域的n里
//函数以参数返回的闭包函数
function f(){
var arg=123;
var n = function(){ //内部函数
return arg;
};
arg++;
return n; //返回给n
}
// var m = f();
// console.log(m());
//循环中的闭包函数
function q(){
var w = [];
var i ;
for(i=0;i<3;i++){
w[i] = (function(x){ //自调函数把参数X的值返回给数组
return function(){
return x;
}
})(i)
}
return w;
}
var w = q();
// for(var i =0;i< w.length;i++){
// console.log(w[i]());
// }
//闭包的两个设置,getter和setter
var getValue,setValue;
(function(){
var secret = 0;
getValue = function(){ //调用函数
return secret;
};
setValue = function(v){ //设置函数
secret = v;
}
})();
setValue(123); //
// console.log(getValue()) ;
//迭代数
function serup(x){
var i = 0;
return function(){
return x[i++];
}
}
var next = serup([‘a‘,‘b‘,‘c‘]);
// console.log(next());
</script>
</body>
</html>
//循环中的闭包函数 function q(){ var w = []; var i ; for(i=0;i<3;i++){ w[i] = (function(x){ //自调函数把参数X的值返回给数组 return function(){ return x; } })(i) } return w; } var w = q();// for(var i =0;i< w.length;i++){// console.log(w[i]());// } //闭包的两个设置,getter和setter var getValue,setValue; (function(){ var secret = 0; getValue = function(){ //调用函数 return secret; }; setValue = function(v){ //设置函数 secret = v; } })(); setValue(123); //// console.log(getValue()) ; //迭代数 function serup(x){ var i = 0; return function(){ return x[i++]; } } var next = serup([‘a‘,‘b‘,‘c‘]);// console.log(next());//循环中的闭包函数 function q(){ var w = []; var i ; for(i=0;i<3;i++){ w[i] = (function(x){ //自调函数把参数X的值返回给数组 return function(){ return x; } })(i) } return w; } var w = q();// for(var i =0;i< w.length;i++){// console.log(w[i]());// } //闭包的两个设置,getter和setter var getValue,setValue; (function(){ var secret = 0; getValue = function(){ //调用函数 return secret; }; setValue = function(v){ //设置函数 secret = v; } })(); setValue(123); //// console.log(getValue()) ; //迭代数 function serup(x){ var i = 0; return function(){ return x[i++]; } } var next = serup([‘a‘,‘b‘,‘c‘]);// console.log(next());//循环中的闭包函数 function q(){ var w = []; var i ; for(i=0;i<3;i++){ w[i] = (function(x){ //自调函数把参数X的值返回给数组 return function(){ return x; } })(i) } return w; } var w = q();// for(var i =0;i< w.length;i++){// console.log(w[i]());// } //闭包的两个设置,getter和setter var getValue,setValue; (function(){ var secret = 0; getValue = function(){ //调用函数 return secret; }; setValue = function(v){ //设置函数 secret = v; } })(); setValue(123); //// console.log(getValue()) ; //迭代数 function serup(x){ var i = 0; return function(){ return x[i++]; } } var next = serup([‘a‘,‘b‘,‘c‘]);// console.log(next());
标签:
原文地址:http://www.cnblogs.com/hpx2020/p/5734173.html