js函数调用的方式
js函数调用的方式
发布时间:2017-01-14 来源:查字典编辑
摘要:Js函数调用的方式有如下几种情况:(1)具名函数直接调用复制代码代码如下:functionfoo(){}foo();(2)匿名函数通过引用来...

Js函数调用的方式有如下几种情况:

(1)具名函数直接调用

复制代码 代码如下:

function foo()

{

}

foo();

(2)匿名函数通过引用来调用

复制代码 代码如下:

fooRef = function()

{

}

fooRef();

(3)没有引用的匿名函数调用1

复制代码 代码如下:

(function()

{

}());

(4)没有引用的匿名函数调用2

复制代码 代码如下:

(function()

{

})();

(5)没有引用的匿名函数调用3

复制代码 代码如下:

void function()

{

}();

js函数调用的方式1

图1.1,图1.2表明了这两种表达式的运算过程是不一样的,图1.1中是用强制运算符使函数调用运算得以执行,图1.2中则用强制运算符运算"函数直接量声明"这个表达式,并返回一个函数自身的引用,然后通过函数调用运算"()"来操作这个函数引用。而上面的最后一个匿名函数调用void function(){}();则用于调用函数并忽略返回值,运算符void用于使其后面的函数表达式执行运算。如果我们不使用"void"与强制运算"()",代码能否执行:

(1)function(){}()//使用''()"强制调用

(2)function(){}();//使用";"来执行语句

脚本引擎会认为function(){}是函数声明,从而通不过语法检测,代码被解析成这样:

function(){};();

function(){}被作为声明被解释,而"();"被独立成一行来解释,因而会报语法错误,为什么知道是"();"导致的错误?我们改成如下代码:

function(){}(1);

这样就会被引擎解释为:

fucntion(){};

(1);//单值表达式

因而通过了语法检测...

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类