JS高级:闭包
Posted tangge
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS高级:闭包相关的知识,希望对你有一定的参考价值。
1 如何产生闭包?
当一个嵌套的内部(子)函数引用了嵌套的外部(父)函数的变量(函数)时, 就产生了闭包(closure)
2 闭包到底是什么?
使用chrome调试查看
理解一: 闭包是嵌套的内部函数
理解二: 包含被引用变量(函数)的对象
注意: 闭包存在于嵌套的内部函数中
3 产生闭包的条件?
函数嵌套
内部函数引用了外部函数的数据(变量/函数)
4 常见的闭包使用形式?
4.1 将函数作为另一个函数的返回值
// 1. 将函数作为另一个函数的返回值
function fn1()
var num = 10;
function fn2()
num++;
console.log(num);
return fn2;
var f = fn1();
f(); // 11
f(); //
4.2 将函数的形参作为实参传递给另一个函数调用
以上是关于JS高级:闭包的主要内容,如果未能解决你的问题,请参考以下文章