JavaScript new對(duì)象的四個(gè)過程實(shí)例淺析
本文實(shí)例講述了JavaScript new對(duì)象的四個(gè)過程。分享給大家供大家參考,具體如下:
new對(duì)象:
function Person(name, age) { this.name = name; this.age = age; } var person = new Person("Alice", 23);
new一個(gè)對(duì)象的四個(gè)過程:
1、創(chuàng)建一個(gè)空對(duì)象
var obj = new Object();
2、讓Person中的this
指向obj,并執(zhí)行Person的函數(shù)體
var result = Person.call(obj);
3、設(shè)置原型鏈,將obj的__proto__
成員指向了Person函數(shù)對(duì)象的prototype
成員對(duì)象
obj.__proto__ = Person.prototype;
4、判斷Person的返回值類型,如果是值類型,返回obj。如果是引用類型,就返回這個(gè)引用類型的對(duì)象。
if (typeof(result) == "object") person = result; else person = obj;
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
相關(guān)文章
js實(shí)現(xiàn)點(diǎn)擊展開隱藏效果(實(shí)例代碼)
本篇文章小編給大家?guī)硪黄P(guān)于JS實(shí)現(xiàn)點(diǎn)擊展開點(diǎn)擊隱藏的效果代碼內(nèi)容,有興趣的朋友參考下。2018-09-09LayUI switch 開關(guān)監(jiān)聽 獲取屬性值、更改狀態(tài)的方法
今天小編就為大家分享一篇LayUI switch 開關(guān)監(jiān)聽 獲取屬性值、更改狀態(tài)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-09-09前端Echarts自適應(yīng)分辨率和縮放功能代碼實(shí)例
ECharts提供了自適應(yīng)功能,可以自動(dòng)調(diào)整圖表大小以適應(yīng)屏幕變化,下面這篇文章主要給大家介紹了關(guān)于前端Echarts自適應(yīng)分辨率和縮放功能的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-07-07javascript之典型高階函數(shù)應(yīng)用介紹
這幾個(gè)方法均為javascript 1.6 數(shù)組新增的方法。是很典型的functional 函數(shù),當(dāng)然也非常實(shí)用。下面是functional的定義并不來自javascript2013-01-01echarts設(shè)置暫無數(shù)據(jù)方法實(shí)例及遇到的問題
Echarts是百度旗下的一款開源的商業(yè)級(jí)數(shù)據(jù)可視化產(chǎn)品,具有豐富的圖表類型,下面這篇文章主要給大家介紹了關(guān)于echarts設(shè)置暫無數(shù)據(jù)方法及遇到的問題的相關(guān)資料,需要的朋友可以參考下2022-12-12iframe的onreadystatechange事件在firefox下的使用
firefox不支持iframe的onreadystatechange事件,不過有個(gè)方法可以實(shí)現(xiàn)同等的效果,需要的朋友可以參考下2014-04-04