闭包函数自执行的原理
Posted 金玲
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了闭包函数自执行的原理相关的知识,希望对你有一定的参考价值。
这个是很久以前写的,也不知道是在书上找到的还是那里来的。
闭包函数自执行的格式 (function(){})();
(1). 首先, 要清楚两者的区别:
(function {// code})是表达式,
function {// code}是函数声明.
(2). 其次, js"预编译"的特点:
js在"预编译"阶段,
会解释函数声明,
但却会忽略表式.
(3). 当js执行到function()
{//code}();时,
由于function()
{//code}在"预编译"阶段已经被解释过,
js会跳过function(){//code},
试图去执行();,
故会报错;
当js执行到(function
{// code})();时,
由于(function
{// code})是表达式,
js会去对它求解得到返回值,
由于返回值是一 个函数, 故而遇到();时, 便会被执行.
以上是关于闭包函数自执行的原理的主要内容,如果未能解决你的问题,请参考以下文章