/*对象体内*/ var a={ init:function(){a.func1();}, //这里要加this或者对象a,但方法体内同等格式不用,思考这其中的差别 func1:function(){alert(1);} } a.init(); //执行 /*方法体内*/ function b(){ this.init=function(){func1();}; //这里可以调用到func1,原因在于对象体没有开辟作用域的概念,它自己依赖于自身所在的作用域,所以不能在对象体中直接找到func1. function func1(){ alert(1); } } new b().init();//执行