javascript闭包
程序员文章站
2024-04-04 08:15:47
...
概念:
闭包就是能读取到其他函数内部变量的函数。
创建一个闭包方式:
在一个函数内部创建另一个函数,通过另一个函数访问这个函数的局部变量。
闭包就是能读取到其他函数内部变量的函数。
创建一个闭包方式:
在一个函数内部创建另一个函数,通过另一个函数访问这个函数的局部变量。
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
缺点:
由于闭包里作用域返回的局部变量资源不会立刻被销毁回收,因此过渡使用闭包容易导致性能下降。
上一篇: PHP面向对象中的重要知识点(一)
下一篇: 利用php生成PDF文档功能
推荐阅读
-
setTimeout在类中使用的问题!_javascript技巧
-
javascript闭包
-
纯js实现的论坛常用的运行代码的效果_javascript技巧
-
javascript - Chrome里使用"复制图片",有没有可能在另一个窗口将该图传递给后端?
-
Javascript实现滑块滑动改变值的实现代码_javascript技巧
-
javascript - 工作中的非技术困惑
-
javascript使用eval或者new Function进行语法检查_javascript技巧
-
用Json实现PHP与JavaScript间数据交换
-
IE与Firefox在JavaScript上的7个不同写法小结_javascript技巧
-
javascript - 怎样避免html不存在某元素而导致js获取该元素的属性信息而报错