閉包是函數内的函數,傳回的是函數,類似于父子函數,子函數就是閉包。
函數的外部能讀取到函數内部的值,就形成了閉包。
優點:讓局部變量不回收,可以在外部更改函數内部的值,再次調用時産生不同結果。
缺點:用多了很占用記憶體。
例子:改變了函數的傳回值
var f1=function(){
var a=1
var f2=function(x=a){
a=x
console.log("a",a)
}
return f2
}
var a1=f1()
a1()//1
a1(2)
a1()//2
部落格園作者:herry菌,原文連結:
https://www.cnblogs.com/wuhairui/p/12792866.html
朋友,看到這裡,關注作者的公衆号吧,不漏掉更新哦
![]()
前端筆記(對于js閉包的了解和優缺點)