js函数调用的方式

 更新时间:2014年05月06日 10:45:23   作者:  
这篇文章主要介绍了js函数调用的方式,需要的朋友可以参考下

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

(1)具名函数直接调用

复制代码 代码如下:

function foo()
  {
  }
  foo();

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

复制代码 代码如下:

  fooRef = function()
  {
  }
fooRef();

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

复制代码 代码如下:

(function()
 {
}());

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

复制代码 代码如下:

 (function()
 {
 })();
 

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

复制代码 代码如下:

 void function()
 {

 }();


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

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

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

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

function(){};();

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

function(){}(1);

这样就会被引擎解释为:

fucntion(){};

(1);  //单值表达式

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

相关文章

  • 前端js文件合并的三种方式推荐

    前端js文件合并的三种方式推荐

    下面小编就为大家带来一篇前端js文件合并的三种方式推荐。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • 完美解决JS中汉字显示乱码问题(已解决)

    完美解决JS中汉字显示乱码问题(已解决)

    完美解决JS中汉字显示乱码问题(已解决)...
    2006-12-12
  • ES6变量赋值和基本数据类型详解

    ES6变量赋值和基本数据类型详解

    本文详细讲解了ES6变量赋值和基本数据类型,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • javascript流程控制语句集合

    javascript流程控制语句集合

    流程控制语句在JS中是至关重要的。JS中的流程控制语句包括if条件判断语句、for循环语句、while循环语句、do……while循环语句、break语句、continue语句和switch语句等7种语句,需要的朋友可以参考下
    2017-09-09
  • JavaScript入门教程(8) Location地址对象

    JavaScript入门教程(8) Location地址对象

    location 地址对象 它描述的是某一个窗口对象所打开的地址。要表示当前窗口的地址,只需要使用“location”就行了
    2009-01-01
  • 大型JavaScript应用程序架构设计模式

    大型JavaScript应用程序架构设计模式

    11月中旬在伦敦举行的jQuery Summit顶级大会上有个session讲的是大型JavaScript应用程序架构,看完PPT以后觉得甚是不错,于是整理一下发给大家共勉。
    2016-06-06
  • JavaScript基础介绍与实例

    JavaScript基础介绍与实例

    这篇文章介绍了JavaScript的基础与实例,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-02-02
  • JavaScript 和 Java 的区别浅析

    JavaScript 和 Java 的区别浅析

    鉴于有同学在学习的时候容易混肴,所以笔者还是将其加以区别,需要的朋友可以参考下
    2013-07-07
  • javascript 中that的含义示例介绍

    javascript 中that的含义示例介绍

    var that = this;,这代表什么意思呢?this代表的是当前对象,var that=this就是将当前的this对象复制一份到that变量中,下面为大家介绍这样做有什么意义
    2014-05-05
  • javaScript parseInt字符转化为数字函数使用小结

    javaScript parseInt字符转化为数字函数使用小结

    前几天做网站的时候需要讲数据库中的时间读取到变量中进行使用,用到parseInt函数,讲字符转化为数字。
    2009-11-11

最新评论