JS原型對(duì)象的創(chuàng)建方法詳解
本文實(shí)例講述了JS原型對(duì)象的創(chuàng)建方法。分享給大家供大家參考,具體如下:
使用js的prototype屬性的時(shí)候,創(chuàng)建對(duì)象的方式是存在優(yōu)先級(jí)的
1、如果方法中存在構(gòu)造方法就先使用方法中的構(gòu)造方法
2、如果方法中不存在構(gòu)造方法則繼續(xù)查找prototype原型的構(gòu)造方法
<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沒(méi)有重新賦值,還是new創(chuàng)建的值prototype.name="TOm"
if(null != name){
this.name = name;
}
}
//有參構(gòu)造方法
function c(name){
//alert(name);//彈出的值是undefined
//如果name為true則不管后面是什么就直接返回第一個(gè)值
//如果name為false則不管后面是什么直接返回后面的值
this.name = name || "Jack";//如果name為空則賦值為后面的Jack
}
//無(wú)參構(gòu)造方法
function d(){
}
a.prototype.name = "Tom";
b.prototype.name = "Tom";
c.prototype.name = "Tom";
d.prototype.name = "Tom";
//有參構(gòu)造方法
alert(new a().name); //undefined
alert(new b().name);//Tom
alert(new c().name);//Jack
alert(new d().name);//使用無(wú)參構(gòu)造方法
</script>
<body >
</body>
</html>
備注:
1、一般我們?cè)诜椒ㄖ刑砑印皩?duì)象”的屬性
2、在prototype屬性后面添加方法
這樣做的目的是為了提高代碼的復(fù)用,可以“無(wú)限”給對(duì)象添加方法,便于拓展
注意:為了提高JS的效率,要注意再使用prototype鏈的時(shí)候應(yīng)該盡量限定在一、二級(jí),因?yàn)闉g覽器會(huì)自動(dòng)去循環(huán)遍歷,深度太深了之后會(huì)影響效率
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動(dòng)畫(huà)特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- 深入理解javascript構(gòu)造函數(shù)和原型對(duì)象
- Javascript中獲取對(duì)象的原型對(duì)象的方法小結(jié)
- js 原型對(duì)象和原型鏈理解
- 舉例說(shuō)明JavaScript中的實(shí)例對(duì)象與原型對(duì)象
- 淺談JS原型對(duì)象和原型鏈
- js使用原型對(duì)象(prototype)需要注意的地方
- JavaScript原型對(duì)象、構(gòu)造函數(shù)和實(shí)例對(duì)象功能與用法詳解
- 圖文詳解JavaScript的原型對(duì)象及原型鏈
- javascript構(gòu)造函數(shù)以及原型對(duì)象的理解
- JavaScript原型對(duì)象原理與應(yīng)用分析
- JS原型對(duì)象操作實(shí)例分析
相關(guān)文章
JavaScript實(shí)現(xiàn)函數(shù)重載的代碼示例
在JavaScript中并沒(méi)有直接支持函數(shù)重載的機(jī)制,但是可以通過(guò)一些技巧來(lái)模擬函數(shù)重載的效果,比如使用參數(shù)判斷,使用默認(rèn)參數(shù),對(duì)象參數(shù),這些方法都可以實(shí)現(xiàn)類(lèi)似函數(shù)重載的效果,所以本文就給大家介紹一下JavaScript如何實(shí)現(xiàn)函數(shù)重載,需要的朋友可以參考下2023-08-08
Three.js中實(shí)現(xiàn)一個(gè)OBBHelper實(shí)例詳解
這篇文章主要介紹了Three.js中實(shí)現(xiàn)一個(gè)OBBHelper,本文參考Box3Helper源碼,并寫(xiě)出一個(gè)OBBHelper,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-09-09
js重寫(xiě)方法的簡(jiǎn)單實(shí)現(xiàn)
下面小編就為大家?guī)?lái)一篇js重寫(xiě)方法的簡(jiǎn)單實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-07-07
純JavaScript實(shí)現(xiàn)HTML5 Canvas六種特效濾鏡示例
實(shí)現(xiàn)了六款簡(jiǎn)單常見(jiàn)HTML5 Canvas特效濾鏡,并且封裝成一個(gè)純JavaScript可調(diào)用的API文件gloomyfishfilter.js,程序源代碼如下,感興趣的朋友可以參考下哈2013-06-06
JS/HTML5游戲常用算法之路徑搜索算法 A*尋路算法完整實(shí)例
這篇文章主要介紹了JS/HTML5游戲常用算法之路徑搜索算法 A*尋路算法,結(jié)合完整實(shí)例形式分析了A*尋路算法的具體實(shí)現(xiàn)技巧,代碼備有詳盡的注釋便于理解,需要的朋友可以參考下2018-12-12
簡(jiǎn)介EasyUI datagrid editor combogrid搜索框的實(shí)現(xiàn)
這篇文章主要介紹了EasyUI datagrid editor combogrid搜索框的實(shí)現(xiàn),涉及到EasyUI中combogrid的使用方法的相關(guān)知識(shí),非常具有參考價(jià)值,需要的朋友可以參考下2016-04-04
微信小程序?qū)崿F(xiàn)簡(jiǎn)易table表格
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)簡(jiǎn)易table表格,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-02-02

