Javascript中匿名函数的多种调用方式总结


Posted in Javascript onDecember 06, 2013

Javascript中定义函数的方式有多种,函数直接量就是其中一种。如var fun = function(){},这里function如果不赋值给fun那么它就是一个匿名函数。好,看看匿名函数的如何被调用。

方式1,调用函数,得到返回值。强制运算符使函数调用执行

(function(x,y){ 
    alert(x+y); 
    return x+y; 
}(3,4));

方式2,调用函数,得到返回值。强制函数直接量执行再返回一个引用,引用再去调用执行
(function(x,y){ 
    alert(x+y); 
    return x+y; 
})(3,4);

这种方式也是很多库爱用的调用方式,如jQuery,Mootools

方式3,使用void

void function(x) { 
      x = x-1; 
      alert(x); 
}(9);

方式4,使用-/+运算符
-function(x,y){ 
    alert(x+y); 
    return x+y; 
}(3,4); +function(x,y){ 
    alert(x+y); 
    return x+y; 
}(3,4); 
--function(x,y){ 
    alert(x+y); 
    return x+y; 
}(3,4); 
++function(x,y){ 
    alert(x+y); 
    return x+y; 
}(3,4);

方式5,使用波浪符(~)
~function(x, y) { 
    alert(x+y); 
   return x+y; 
}(3, 4);

最后看看错误的调用方式
function(x,y){ 
    alert(x+y); 
    return x+y; 
}(3,4);
Javascript 相关文章推荐
JavaScript中“过于”犀利地for/in循环使用示例
Oct 22 Javascript
JS与C#编码解码
Dec 03 Javascript
JS实现文字放大效果的方法
Mar 03 Javascript
js实现时间显示几天前、几小时前或者几分钟前的方法集锦
May 29 Javascript
纯javascript实现图片延时加载方法
Aug 21 Javascript
轻松使用jQuery双向select控件Bootstrap Dual Listbox
Dec 13 Javascript
Javascript实现通过选择周数显示开始日和结束日的实现代码
May 30 Javascript
解决在vue项目中,发版之后,背景图片报错,路径不对的问题
Mar 06 Javascript
JS/jQuery实现简单的开关灯效果【案例】
Feb 19 jQuery
vue工程全局设置ajax的等待动效的方法
Feb 22 Javascript
Node.js安装详细步骤教程(Windows版)详解
Sep 01 Javascript
利用layer实现表单完美验证的方法
Sep 26 Javascript
变量声明时命名与变量作为对象属性时命名的区别解析
Dec 06 #Javascript
JavaScript作用域与作用域链深入解析
Dec 06 #Javascript
深入解析JavaScript中的变量作用域
Dec 06 #Javascript
关于Javascript作用域链的八点总结
Dec 06 #Javascript
Javascript变量作用域详解
Dec 06 #Javascript
JavaScript1.6数组新特性介绍以及JQuery的几个工具方法
Dec 06 #Javascript
Javascript中克隆一个数组的实现代码
Dec 06 #Javascript
You might like
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
2014/09/24 PHP
thinkPHP下ueditor的使用方法详解
2015/12/26 PHP
详解js异步文件加载器
2016/01/24 PHP
详解Yii2 rules 的验证规则
2016/12/02 PHP
PHP使用Session实现上传进度功能详解
2019/08/06 PHP
showModalDialog模态对话框的使用详解以及浏览器兼容
2014/01/11 Javascript
nodejs中使用monk访问mongodb
2014/07/06 NodeJs
node.js中的path.normalize方法使用说明
2014/12/08 Javascript
jQuery实现自定义下拉列表
2015/01/05 Javascript
JavaScript按值删除数组元素的方法
2015/04/24 Javascript
Javascript 实现全屏滚动实例代码
2016/12/31 Javascript
bootstrap手风琴制作方法详解
2017/01/11 Javascript
详解Node项目部署到云服务器上
2017/07/12 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
2018/06/14 Javascript
JS立即执行的匿名函数用法分析
2019/11/04 Javascript
vue 实现v-for循环回来的数据动态绑定id
2019/11/07 Javascript
Vue分页效果与购物车功能
2019/12/13 Javascript
js实现浏览器打印功能的示例代码
2020/07/15 Javascript
python发送邮件的实例代码(支持html、图片、附件)
2013/03/04 Python
Python中设置变量作为默认值时容易遇到的错误
2015/04/03 Python
python 3.5下xadmin的使用及修复源码bug
2017/05/10 Python
Centos7 Python3下安装scrapy的详细步骤
2018/03/15 Python
Python3.5 处理文本txt,删除不需要的行方法
2018/12/10 Python
利用pyecharts实现地图可视化的例子
2019/08/12 Python
python应用文件读取与登录注册功能
2019/09/23 Python
使用Pyhton集合set()实现成果查漏的例子
2019/11/24 Python
Python Tkinter图形工具使用方法及实例解析
2020/06/15 Python
Python实现SMTP邮件发送
2020/06/16 Python
浅析Python 抽象工厂模式的优缺点
2020/07/13 Python
详解Pycharm第三方库的安装及使用方法
2020/12/29 Python
AmazeUI 等分网格的实现示例
2020/08/25 HTML / CSS
新秀丽官方旗舰店:Samsonite拉杆箱、双肩包、皮具
2018/03/05 全球购物
瑞典的玛丽小姐:Miss Mary of Sweden
2019/02/13 全球购物
莱德杯高尔夫欧洲官方商店:Ryder Cup Shop
2019/08/14 全球购物
如何写一个自定义标签
2012/12/28 面试题
公共场所卫生管理制度
2015/08/05 职场文书