JS中自执行的匿名函数
2015-06-23 18:02
525 查看
JS中的自执行的匿名函数有一个更标准的名字“立即执行表达式”,常用到的格式为:
最后一对()里写函数参数。
Javascript中明确规定不能以function开头,所以:
function(){
//代码
}()
这种写法是错误的。这种写法期望是立即调用一个匿名函数表达式,结果是进行了函数声明,但函数声明必须要有标识符做为函数名称。
那些匿名函数附近使用括号或一些一元运算符的惯用法,就是来引导解析器,指明运算符附近是一个表达式。按照这种理解,可以写出五类、超过十几种的让匿名函数表达式立即调用的写法:
(function(){ //代码 })();
最后一对()里写函数参数。
Javascript中明确规定不能以function开头,所以:
function(){
//代码
}()
这种写法是错误的。这种写法期望是立即调用一个匿名函数表达式,结果是进行了函数声明,但函数声明必须要有标识符做为函数名称。
那些匿名函数附近使用括号或一些一元运算符的惯用法,就是来引导解析器,指明运算符附近是一个表达式。按照这种理解,可以写出五类、超过十几种的让匿名函数表达式立即调用的写法:
[code]( function() {}() ); ( function() {} )(); [ function() {}() ]; ~ function() {}(); ! function() {}(); + function() {}(); - function() {}(); delete function() {}(); typeof function() {}(); void function() {}(); new function() {}(); new function() {}; var f = function() {}(); 1, function() {}(); 1 ^ function() {}(); 1 > function() {}();
相关文章推荐
- JavaScript 的性能优化:加载和执行
- 深入浅出jsonp
- js定义对象的两种方法以及js用call来实现类的继承
- JS闭包
- ResponsiveSlides.js最轻量级的幻灯片插件
- js、jq怎么控制文本框只能输入数字
- $.getJson
- 1、使用javascript代码写出一个函数:实现传入两个整数后弹出较大的整数
- JS方法代理
- extjs传递参数
- javascript定义类(class)的三种方法
- JSON vs ProtoBuf vs XML
- extjs动态添加列
- maven 中使用jstl标准标签库
- 【代码片段】javascript下选项卡切换
- 【代码片段】javascript下新增、删除一行/选中文字变颜色
- javascript(浏览器窗口可视区域)
- Json文件/网址解析
- html5+js实现图片预览
- Newtonsoft.Json的初步用法