标签:图片 调用 它的 私有变量 js闭包 doc 变量 案例 log
闭包:
1、一个函数嵌套另一个函数
2、内层函数调用外层函数的变量
3、内层函数作为返回值返回给外层函数
闭包代码:
function num(){ let i = 0 return function getNum(){ //内层函数作为返回值返回给外层函数 return ++i //内层函数调用外层函数的变量 } } let n = num() console.log(n())//1 console.log(n())//2 console.log(n())//3
优点:防止变量全局污染,调用数据更加方便
缺点:耗内存,因为每次使用闭包函数都会生成一个独立的,不被销毁的执行空间,存储它的私有变量
闭包案例:
点击每个li都会打印出它对应的下标
js代码:
const list = document.querySelectorAll(‘ul li‘) for(let i = 0;i<list.length;i++){ list[i].onclick = ((index)=>{ return ()=>{ console.log(index) } })(i) }
标签:图片 调用 它的 私有变量 js闭包 doc 变量 案例 log
原文地址:https://www.cnblogs.com/zlf1914/p/13064638.html