浅析Function_闭包
2018-06-24 00:38:36来源:未知 阅读 ()
闭包的必要性:弥补全局变量(全局污染)和局部变量(无法共享,短暂保存)的缺陷
使用场景:既反复使用局部变量,又避免全局污染
1.步骤:
1.定义外层函数,封装被保护的局部变量
2.定义内层函数,对外层函数中需要操作的局部变量进行操作
3.外层函数返回内层函数的对象
//定义一个取号机函数,随机生成一个永不重复的号码
function outer(){ //第一步
var n=1;
function inner(){ //第二步
return n++;
}
return inner(); //第三步
}
var num=outer();
console.log(num()); //1
console.log(num()); //2
var getNum=outer();
console.log(getNum());//1(互不干扰)
console.log(getNum());//2
2.(读)判断闭包的依据:
1.嵌套函数
2.内层函数操作了外层函数的局部变量
3.外层函数返回内层函数
3.判断闭包的执行结果
1.外层函数被调用几次,就有多少个不受干扰的局部变量
2.外资一个闭包的函数被调用几次,局部变量就变化几次。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 浅析XMLHttpRequest的缓存问题 2020-02-25
- JavaScript闭包函数访问外部变量的方法 2019-12-24
- 背景线条实现 2019-08-14
- 函数作用域查找、闭包和匿名函数整理 2019-08-14
- 手机号码正则表达式 2019-08-14
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash