理解闭包
借着夏天的名义,一起去看海 想和你一起 坐在海边秋千上吹风看日落
如何产生闭包
- 当一个嵌套的内部(子)函数引用了嵌套的外部(父)函数的变量(函数)时,就产生了闭包。
闭包是什么?
- 理解一:闭包是嵌套的内部函数
- 理解二:包含被引用变量(函数)的对象
- 闭包存在于嵌套的内部函数中
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>理解闭包</title>
</head>
<body>
<script>
function fn1() {
var a =2;
var b='abc';
function fn2() { // 执行函数定义就会产生闭包(不用调用内部函数)
console.log(a);
}
}
</script>
</body>
</html>
产生的闭包的条件
- 函数嵌套
- 内部函数引用外部函数的数据(变量、函数)