淺談原型對象的常用開發(fā)模式
1、構造函數和原型組合使用模式:原型對象雖然可以對所有實例的屬性和方法共享,但是也有它的局限性,正是因為可以共享,也導致某一個實例對象若改變了共享的屬性和方法,其他對象在使用時會收到影響。
所以可以組合使用構造函數式和原型模式,在實際開發(fā)中這種模式也應用的最為廣泛。
2、動態(tài)原型模式:就是把屬性和方法都封裝到構造函數中
例如:
function Person(name,age,sex){
this.name=name;
this.age=age;
this.sex=sex;
if(typeof this.sayName!=="function"){
Person.prototype.sayName=function(){
console.log(this.name);
}
}
}
3、穩(wěn)妥構造函數模式:由道格拉斯提出的,就是沒有公共屬性,也不實用this和new,穩(wěn)妥模式最適合在安全的環(huán)境中使用,如果程序對于安全性的要求很高,那么非常適合這種模式。
例如:
function Person(name,age){
var obj=new Object();
obj.name=name;
obj.age=age;
obj.sayName=function(){
console.log(this.name);
}
return obj;
}
以上這篇淺談原型對象的常用開發(fā)模式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
js replace(a,b)之替換字符串中所有指定字符的方法
下面小編就為大家?guī)硪黄猨s replace(a,b)之替換字符串中所有指定字符的方法。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-08-08
使用Webpack壓縮與轉譯JavaScript代碼的操作方法
在Web開發(fā)中,代碼的性能和加載時間是用戶體驗的重要組成部分,為此,將JavaScript代碼壓縮和優(yōu)化是發(fā)布前一個必不可少的步驟,所以本文給大家介紹了如何使用Webpack壓縮與轉譯JavaScript代碼,需要的朋友可以參考下2024-05-05
跟我學Node.js(四)---Node.js的模塊載入方式與機制
Node.js中模塊可以通過文件路徑或名字獲取模塊的引用。模塊的引用會映射到一個js文件路徑,除非它是一個Node內置模塊。Node的內置模塊公開了一些常用的API給開發(fā)者,并且它們在Node進程開始的時候就預加載了。2014-06-06

