// es6 的写法
//当let a = add()和let b = add()时分别调用a()和b()中的count是独立的
let add = (()=>{
let count = 0;
return ()=> count++
})
// es6 的写法 自调用
let add = (()=>{
let count = 0;
return ()=> count++
})()
// es5 的写法
let add = (function(){
let count = 0;
return function(){
return count++
}
})
// es5 的写法 自调用
let add = (function(){
let count = 0;
return function(){
return count++
}
})()