(
function f(){
var values = "";
for(var v in this)values += v + " ";
window.alert(values);
}
)
();为何产生两个括弧,前一个括弧是一个function,后一个为空?
各代表什么含义
function f(){
var values = "";
for(var v in this)values += v + " ";
window.alert(values);
}
)
();为何产生两个括弧,前一个括弧是一个function,后一个为空?
各代表什么含义
解决方案 »
- 想做一个基于web的绘图程序,有没有js技术、类库啥的推荐一下
- jquery ui 换肤 问题
- ASP.NET中javascript验证函数调用问题
- 怎样用js引入word内容到htmledit中?急需
- 怎样实现透明的IFRAME,而不会使页面上的SELECT元素“浮”在IFRAME上面?
- 年终大盘点(三):最佳非技术贴!
- 大家帮帮忙,需要源代码:还记得csdn原来的样子嘛,我需要左边那个菜单显示和隐藏的代码
- 求助:如何使Select下拉列表框能编辑?(有效即加分!)
- 'javascript:history.back
- 报表打印问题
- Javascript入门
- 求一段JAVAScript 特效代码
前一个()是函数定义,后一个()是调用。
相当于function f(){
var values = "";
for(var v in this)values += v + " ";
window.alert(values);
}f();
但是可以写成 void function(){...}() 也是可以的,因为void关键字会告诉js引擎后面要跟一个表达式,所以后面就被认出来是一个function表达式所产生的匿名函数对象,并进行调用的结果,void会把调用结果抛弃。另外 new function(){}() 也是类似的。这样写的主要好处是,可以把一些不希望暴露出来的内部变量和方法隐藏在匿名函数里面。