Init: function(){
     ......
}
function Init(){
     ........
}这2种写法有什么区别?我用一个点击事件的时候 onclick="Init()"上面的写法执行不了。为什么?

解决方案 »

  1.   

    前一种写法是对象字面量表示法的一部分,完整的应该是
    var obj = {
        //...
        Init: function () {
            //......
        }
    };
    那么onclick就应该写成 onclick="obj.Init()",或者写成:
    var Init = function () {
            //......
        };
    与function Init(){...}有微弱区别,但可以使用onclick="Init()"
      

  2.   

    第一种形式不是申明函数的方式。。这种类似的写法我只在ajax里见过。。success:function(){}
      

  3.   

    第一种 是给属性init赋值,这个值是一个函数。
    第二种:定义一个函数,并且名字为init.
      

  4.   

    function foo(){
      ........
    }标准的函数声明, 前后左右, 东西南北不要放任何东西, 像if(true) { function foo() {} } 神马的都不是函数声明
    结果就是解释的时间等等不同.