1.直接定義在全域性的函式是全域性變數,可能被後面**覆蓋失效。例:
function checkname()
//等價於
var checkname = function()
解決方法:建立物件,將方法作為屬性名放入物件裡
2.類與物件建立函式的不同
//返回物件方式
var check = function()
}}//呼叫
var a = new check();
a //
//屬性定義方式
var check = function()
}//呼叫
var a = new check();
a //check
書中所說,第一種方式建立的物件a和物件check沒有任何關係,每次返回的是乙個新物件,故改造之後又第二種形式。
3.在原型上定義方法
原因:在上面的方法中,每新建乙個物件,都要對類的this屬性進行複製,有多餘的消耗
var check = function(){};
check.prototypr.checkname = function(){}
check.prototype.checkpass = function(){}
//等價於(少寫prototype)
var check = function(){};
check.prototype = ,
checkpass: function()
}//呼叫時
var a = new check();
a.checkname();
a.checkpass();
ps:如果想要鏈式呼叫,需要在方法內返回this
var check = function(){}
check.prototype = ,
checkpass: function()
}//鏈式呼叫方法
var a = new check();
a.checkname().checkpass();
JavaScript設計模式
js類設計模式一 類建構函式 function myclass 定義公共屬性 myclass.prototype 定義公共方法 myclass.prototype.methoda function myclass.prototype.methodb function 呼叫 var objclass ...
JavaScript 設計模式
1 單例模式 singleton pattern 單例模式,是一種常用的軟體設計模式。在它的核心結構中只包含乙個被稱為單例的特殊類。通過單例模式可以保證系統中乙個類只有乙個例項。即乙個類只有乙個物件例項 單例模式會阻止其他物件例項化其自己的單例物件的副本,從而確保所有物件都訪問唯一例項。因為類控制了...
JavaScript設計模式
設計模式是什麼?設計模式就是一套被反覆使用 多數人知曉的 經過分類編目的 設計經驗的總結。為什麼要使用設計模式?設計模式可重用 讓 更容易被他人理解 保證 可靠性,設計模式使 編制真正工程化。設計模式怎麼來的?設計模式概念是由四人幫 設計模式 可復用物件導向軟體的基礎 的四位作者 提出,總共分成了三...