var sys = {}; (function(){}) (); 求教js语法,该如何处理

var sys {} (function(){}) () 求教js语法var sys {}(function(){sys.confirm function(title, m

var sys = {}; (function(){}) (); 求教js语法
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 么? js
[解决办法]
var sys = {};  相当 sys=new Object()
(function(){}) ();  匿名函数
sys.confirm('title','msg',btnCancelClick);
根据function(title, msg, onClick, onCancel),
btnCancelClick 好像是点确定是执行了

 
[解决办法]
匿名函数,直白点就是没名字,一般函数都有函数名以便调用,匿名函数一般都是声明后就执行

function sys.confirm(){},可以这样写?真不知道
[解决办法]

引用:
(function(){}) ();  匿名函数,我还是不太理解。


(function(){}) ();

function test(){} 是个有名称的函数,函数名为 test

function(){} 是个没有名称的函数,所以是匿名的
尝试 var f = function(){}; 会使此函数拥有一个名字,f,使用 f(); 可调用之

那么,我们可以把 函数名当做一个函数地址来理解,在函地址后追加()就是对此函数的调用
例如,
函数名 test,test() 就是调用它


函数名 f,f() 就是调用它

(function(){}) 只是加了个括号,标示其优先运算,括号中的内容可以理解为一个函数地址
然后,用函数地址+() 就可以使此函数运行起来

(function(){}) (); 的意思就是,有一个匿名函数,定义完后立刻调用
[解决办法]
(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();