我知道下面这个是闭包
function makeFunc() { var name = "Mozilla"; function displayName() {
alert(name);
} return displayName;
}
var myFunc = makeFunc();
myFunc();有人说,在执行过程完毕后,返回函数,或者将函数得以保留下来,即形成闭包。那么,是不是下面的第一种就可以算作闭包了,红皮书说,函数内部创建另一个函数叫闭包,那么如何解释下面两个情况?
var a = 1
var b = function(){ console.log(a)
}
var c = 1
function d(){ console.log(c)
}《javascript权威指南》 (第六版)第8章第6节:从技术的角度讲,所有的JavaScript函数都是闭包:它们都是对象,它们都关联到作用域链。
《javascript高级程序设计》(第三版)第7章第2节:闭包是指有权访问另一个函数作用域中的变量函数;
慕桂英4014372
三国纷争
随时随地看视频慕课网APP
相关分类