//闭包(使用了外部函数的变量并保持引用关系(外部函数结束,所有变量对象销毁,使用闭包后,被内部函数引用的变量不会被销毁,依然保持被引用)内部函数)
//闭包:内部函数使用外部函数,外部函数先于内部函数结束
var p1={name:"Tom",age:22};
var p2={name:"Jack",age:23};
var ps=[p1,p2];
ps.sort(byProper("age"));
function byProper(properName){
return function(o1,o2){
if(o1[properName]>o2[properName]) return 1;
else if(o1[properName]<o2[properName]) return -1;
else return 0;
}
}
alert(ps[0].name)
//普通作用域:内部函数使用外部函数,内部函数先于外部函数结束
function f(){
var a =10;
(function(){
a+=10;
alert(a);
})();
alert(a);
}
</script>
闭包
最新推荐文章于 2025-11-01 01:14:35 发布
913

被折叠的 条评论
为什么被折叠?



