闭包是指在一个函数内部定义的函数,该内部函数可以访问到外部函数的变量。通过闭包,我们可以创建私有变量,保护数据安全。
function outerFunction() { var outerVariable = 'I am outside'; function innerFunction() { console.log(outerVariable); } return innerFunction; } var innerFunc = outerFunction(); innerFunc(); // 输出 'I am outside'
在上面的例子中,outerFunction
是一个外部函数,它定义了一个变量 outerVariable
。内部函数 innerFunction
可以访问到外部函数的变量 outerVariable
,即使在外部函数执行完毕后,内部函数依然可以访问到该变量。
我们可以通过调用外部函数 outerFunction
并将其返回值赋给一个变量 innerFunc
,然后再调用 innerFunc
来访问外部函数的变量 outerVariable
。输出结果为 'I am outside'。