javascript之函数直接量(function(){})()


种语法是什么意思(function(){})()
如下例:
<script language="JavaScript">
(function(){
document.write("some script code");
})()
</script>



<script language="JScript" type="Text/JScript">
<!--
var a=(function(s){return s})("abc");
alert(a);
var b=function(s){return s};
alert(b("abc"));
//-->
</script>


引用
这个如何解释呢
大家应该记得这种写法
var a=function (){}
那么怎么运行a呢
那么就是a()
同样的道理
我们不通过a这个变量来存那么是如何写法
就是
function(){}()
但是你会发现这样是错的
因为解析引擎解析的时候,解析的时候发现}判断到了函数结束了
并没有把那个函数作为块来运行
那么加上()是强制把function那块作为块
by flashsoft



引用
应该叫函数直接量。

function f(x) {return x*x;}
var f=function(x) {return x*x;} ----此种写法定义的函数称为函数直接量,是定义函数的一种方法。他是一个表达式而不是语句。此函数是匿名函数,f只是对函数的引用,不是函数名。

函数直接量可以存储一个变量中或传递给其他的函数甚至被“直接调用”。

var t=(function(x) {return x*x;})(10);//定义一个函数并且调用此函数。

--------以上引自《javascript权威指南》by lyxscn




引用
就像java的匿名类一样,定义并执行一个函数



相关阅读:
css值转换成数值请抛弃parseInt
Using the TextRange Object
asp.net SAF 中缓存服务的实现
ASP访问INTERBASE数据库
如何解决Windows7中快捷键切换输入法失灵的问题
利用vbscript的for命令实现定时关机
关于PGA的功能
asp.net(c#)利用构造器链的代码
linux操作系统的crontab定时命令
asp汉字中文图片验证码的实现代码
nslookup来列举二级玉米
如何突破PHP程序员的技术瓶颈分析
PHP框架之Akelos
CSS中的!important属性
快速导航

Copyright © 2016 phpStudy | 皖ICP备18014864号-4