JS 的闭包是什么?怎么用?
let count
function add (){ // 访问了外部变量的函数
count += 1
}const x = function (){
var count
function add (){ // 访问了外部变量的函数
count += 1
}
}()Last updated
let count
function add (){ // 访问了外部变量的函数
count += 1
}const x = function (){
var count
function add (){ // 访问了外部变量的函数
count += 1
}
}()Last updated
const add2 = function (){
var count
return function add (){ // 访问了外部变量的函数
count += 1
}
}()add2()
// 相当于
add()
// 相当于
count += 1function test() {
var x = {name: 'x'};
var y = {name: 'y', content: "-----这里很长,有一万三千五百个字符那么长----" }
return function fn() {
return x;
};
}
const myFn = test() // myFn 就是 fn 了
const myX = myFn() // myX 就是 x 了
// 请问,y 会消失吗?