var sys = {}; (function(){}) (); 求教js语法

zhangyyy_10 2013-08-27 02:17:12
var sys = {};
(function(){


sys.confirm = function(title, msg, onClick, onCancel){
addMsgDialog();
$("#msgDialog").attr("title",title).html('<p>' + msg + '</p>').dialog({
resizable: false,
closeOnEscape: false,
minHeight:200,
minWidth: 200,
modal: true,
dialogClass: 'no-close',
buttons: {
"OK": function() {
if(onClick != undefined){
onClick();
};
$( this ).dialog( "close" );
},
"Cancel": function() {
if(onCancel != undefined){
onCancel();
};
$( this ).dialog( "close" );
}
}
});
$(".ui-dialog-buttonpane button span").eq(0).html(sys.btn.ok);
$(".ui-dialog-buttonpane button span").eq(1).html(sys.btn.cancel);
};

})();




求教 var sys = {}; (function(){}) (); 这种是什么js语法啊?
sys.confirm('title','msg',btnCancelClick);
这样点 取消 的时候会执行 方法 btnCancelClick 么?
...全文
173 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangyyy_10 2013-08-29
  • 打赏
  • 举报
回复
引用 5 楼 clark_kidd 的回复:
(1)sys.confirm = function(title, msg, onClick, onCancel){ } 按照语序翻译, sys这个对象有一个confirm属性,该属性保留了一个匿名函数地址为xxxxx (2)function sys.confirm (title, msg, onClick, onCancel){ } 按照语序翻译 sys这个对象有一个confirm方法,内容为xxxxx 上面说过,函数名可以理解为函数地址,所以,这两个写法,没有不同 js 是个有趣的东西,函数地址理解上等同于函数名,以下是示例 function a(){alert(1)}; var b=a; a(); b();
说的很好,我要好好学,才行,你平常都看什么书啊?
clark_kidd 2013-08-27
  • 打赏
  • 举报
回复
(1)sys.confirm = function(title, msg, onClick, onCancel){ } 按照语序翻译, sys这个对象有一个confirm属性,该属性保留了一个匿名函数地址为xxxxx (2)function sys.confirm (title, msg, onClick, onCancel){ } 按照语序翻译 sys这个对象有一个confirm方法,内容为xxxxx 上面说过,函数名可以理解为函数地址,所以,这两个写法,没有不同 js 是个有趣的东西,函数地址理解上等同于函数名,以下是示例 function a(){alert(1)}; var b=a; a(); b();
clark_kidd 2013-08-27
  • 打赏
  • 举报
回复
引用 2 楼 zhangyyy_10 的回复:
(function(){}) (); 匿名函数,我还是不太理解。
(function(){}) (); function test(){} 是个有名称的函数,函数名为 test function(){} 是个没有名称的函数,所以是匿名的 尝试 var f = function(){}; 会使此函数拥有一个名字,f,使用 f(); 可调用之 那么,我们可以把 函数名当做一个函数地址来理解,在函地址后追加()就是对此函数的调用 例如, 函数名 test,test() 就是调用它 函数名 f,f() 就是调用它 (function(){}) 只是加了个括号,标示其优先运算,括号中的内容可以理解为一个函数地址 然后,用函数地址+() 就可以使此函数运行起来 (function(){}) (); 的意思就是,有一个匿名函数,定义完后立刻调用
fzfei2 2013-08-27
  • 打赏
  • 举报
回复
匿名函数,直白点就是没名字,一般函数都有函数名以便调用,匿名函数一般都是声明后就执行

function sys.confirm(){},可以这样写?真不知道
zhangyyy_10 2013-08-27
  • 打赏
  • 举报
回复
引用 1 楼 fzfei2 的回复:
var sys = {}; 相当 sys=new Object() (function(){}) (); 匿名函数 sys.confirm('title','msg',btnCancelClick); 根据function(title, msg, onClick, onCancel), btnCancelClick 好像是点确定是执行了
非常感谢! (function(){}) (); 匿名函数,我还是不太理解。 (1)sys.confirm = function(title, msg, onClick, onCancel){ } (2)function sys.confirm (title, msg, onClick, onCancel){ } 这两种写法有什么不同吗?
fzfei2 2013-08-27
  • 打赏
  • 举报
回复
var sys = {}; 相当 sys=new Object()
(function(){}) (); 匿名函数
sys.confirm('title','msg',btnCancelClick);
根据function(title, msg, onClick, onCancel),
btnCancelClick 好像是点确定是执行了

87,902

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧