//如果这样写不是真正的对象 var checkOut = function(){ return { checkName:function(){ console.log(1111); }, checkmail:function(){ console.log(22222); } }; } var a = checkOut(); a.checkName(); var b = checkOut(); b.checkName(); //======================================================== //这样是js的真实对象 var checkout = function(){ this.checkName = function(){ console.log(111111111111); }, this.checkUser = function(){ console.log(22222222222222); } } var obj = new checkout(); obj.checkName(); //=========================================================== //上面每次new都是有一套方法,成本太大参考下面 var checkobject = function(){}; checkobject.prototype.checkName = function(){ console.log(1111); } checkobject.prototype.checkUser = function(){ console.log(222); } checkobject.prototype.checkpassword = function(){ console.log(3333); } var obj = new checkobject(); obj.checkName(); // ======================================================== // 参考下面 var checkobject = function(){}; checkobject.prototype={ checkName:function(){ console.log(666); }, checkUser:function(){ console.log(222); }, checkPwd:function(){ console.log(3333); } }; var obj = new checkobject(); obj.checkName(); // ======================================================= // 链式操作 var checkout = { checkName:function(){ console.log(1111); return this; }, checkUser:function(){ console.log(2222); return this; } }; checkout.checkName().checkUser(); //===================================================== //原型链创建 var Checkout = function(){}; Checkout.prototype={ checkName:function(){ console.log(111); return this; }, checkEmail:function(){ console.log(222); return this; } }; var obj = new Checkout(); obj.checkName().checkEmail();