本文實例講述了JS原型對象的創建方法。分享給大家供大家參考,具體如下:
使用js的prototype屬性的時候,創建對象的方式是存在優先級的
1、如果方法中存在構造方法就先使用方法中的構造方法
2、如果方法中不存在構造方法則繼續查找prototype原型的構造方法
<html> <head> <TITLE>class_obj_js_class</TITLE> <script language=javaScript> function a(name){ //alert(name);//彈出的值是undefined //alert(null==name);//true if(null == name){ this.name = name; } } function b(name){ //alert(name);//彈出的值是undefined //false,this.name沒有重新賦值,還是new創建的值prototype.name="TOm" if(null != name){ this.name = name; } } //有參構造方法 function c(name){ //alert(name);//彈出的值是undefined //如果name為true則不管後面是什麼就直接返回第一個值 //如果name為false則不管後面是什麼直接返回後面的值 this.name = name || "Jack";//如果name為空則賦值為後面的Jack } //無參構造方法 function d(){ } a.prototype.name = "Tom"; b.prototype.name = "Tom"; c.prototype.name = "Tom"; d.prototype.name = "Tom"; //有參構造方法 alert(new a().name); //undefined alert(new b().name);//Tom alert(new c().name);//Jack alert(new d().name);//使用無參構造方法 </script> <body > </body> </html>
備注:
1、一般我們在方法中添加“對象”的屬性
2、在prototype屬性後面添加方法
這樣做的目的是為了提高代碼的復用,可以“無限”給對象添加方法,便於拓展
注意:為了提高JS的效率,要注意再使用prototype鏈的時候應該盡量限定在一、二級,因為浏覽器會自動去循環遍歷,深度太深了之後會影響效率
更多關於JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。