av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

JS原型對象操作實例分析

瀏覽:120日期:2024-05-04 17:22:44

本文實例講述了JS原型對象操作。分享給大家供大家參考,具體如下:

萬物皆對象,函數也同樣是對象,是特殊的函數對象

function fn() {}let a = new fn();let b = new Function()console.log(typeof a); // object console.log(typeof b); // function

打開瀏覽器,輸入fn,會發現fn有一個prototype(原型)屬性,這個屬性是一個指針,指向原型對象,這個對象包括了特定類型所有共享的屬性和方法。換句話說,prototype對象包含了函數所有的共享屬性和方法。

function fn() {}fn.prototype.a = 18;fn.prototype.b = 'b';fn.prototype.test = function() { console.log(123); }var r = new fn();console.log(r.a); // 18

我們直接在函數fn的原型屬性上加了兩個屬性和一個方法,實例化后便可以訪問原型中的值。

原型對象有一個constructor屬性,它也是一個指針,它指向原來的函數,也就是說,fn.prototype.constructor == fn。 所有的實例都有這個原型對象,因此實例可以訪問到原型對象中的屬性和方法。

JS原型對象操作實例分析

那么實例怎么搜索變量或者方法的值呢?首先,函數實例會在函數本身上去尋找該變量,如果沒有找到,會在原型對象上尋找變量。

function fn() {}fn.prototype.a = 18;fn.prototype.b = 'b';fn.prototype.test = function() { console.log(123);}var a = new fn();var b = new fn();b.a = 20console.log(b.a); // 20console.log(a.a); // 18

創建了兩個實例,在b實例上手動添加了一個a屬性,在fn的原型對象上也有一個a屬性,那么對于b實例會優先訪問本身的屬性而不是原型上的屬性。

參考內容:JavaScript高級程序設計

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《javascript面向對象入門教程》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》

希望本文所述對大家JavaScript程序設計有所幫助。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 最新av片| 综合久久综合久久 | 国产中文字幕在线 | 黄色成人av | 91电影在线 | 黄色免费av | 亚洲免费视频在线观看 | 国产高清在线观看 | 波多野结衣一区二区三区在线观看 | 国产日韩欧美在线观看 | 国产精品99视频 | 盗摄精品av一区二区三区 | 99免费精品视频 | 日本天天操 | 精品久久久久久久久久 | 日韩中文字幕第一页 | 成人一区二区视频 | 成人小视频在线观看 | 国产黄色一级电影 | 成人免费视频观看视频 | 美女一区| 三级免费| 一区二区三区亚洲 | 国产男女猛烈无遮掩视频免费网站 | 国产一级视频在线 | 成人在线免费观看av | www.色.com | 亚洲 欧美 日韩 精品 | 久久精品日产第一区二区三区 | 伊人最新网址 | 欧美三级电影在线播放 | 成人自拍视频 | 欧美在线天堂 | 国产一区二区三区在线 | 国产欧美视频一区 | 国产99小视频 | 欧美国产日韩在线观看成人 | 黄色免费在线观看网址 | 久久精彩视频 | 高清欧美性猛交xxxx黑人猛交 | 日韩中文一区二区三区 |