亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

javascript - 為什么newtoy.constructor === Gadget在控制臺的結果是false?

瀏覽:114日期:2023-05-18 13:44:53

問題描述

function Gadget(name,color){ this.name=name; this.color=color; this.whatAreYou=function(){return ’I am a ’ + this.color + ’ ’ + this.name; };}Gadget.prototype={ price:100, rating:3, getInfo:function(){return ’Rating: ’ + this.rating + ’, price: ’ + this.price; }};var newtoy=new Gadget(’webcam’,’black’);new.rating;//3newtoy.constructor === Gadget;//true

上述例子摘自《面向對象編程指南》一書

問題解答

回答1:

如果代碼沒寫錯的話,那么就是false,因為你已經把Gadget的原型對象給重寫了,而你重寫的原型對象中沒有constructor屬性,可以參考一下《JavaScript高級程序設計》中第六章關于原型的介紹

回答2:

樓上正解,Gadget.prototype 被重寫了。因為原型對象中有個隱式的constructor,指向了構造函數本身。如下:javascript - 為什么newtoy.constructor === Gadget在控制臺的結果是false?

原型拓展,最好寫成這種形式:

Test.prototype.newFn = function() { ...}

或者使用Object.assign()合并對象:

Test.prototype = Object.assign(Test.prototype, { newAttr: ’’, newFn: function() {... }})

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 精品三级国产 | 亚洲国产日产韩国欧美综合 | 在线视频观看免费视频18 | 欧美中文字幕一区二区三区 | 亚洲最大的视频网站 | 一级做a爰片性色毛片思念网 | 国产精品白浆精子流水合集 | 免费看美女毛片 | 天天拍夜夜添久久精品中文 | 视频在线观看大片 | 欧美洲久久日韩欧美 | 免费在线观看一级片 | 在线国产日韩 | 国产色网| 久久99国产精品久久99软件 | 免费xxxxx大片观看 | 亚洲视频精品在线 | 日韩欧美在线视频观看 | 久久国产欧美 | 伊人成影院九九 | 老人与老人一级毛片 | 黄色网页免费观看 | 日韩激情成人 | 2019国内精品久久久久久 | 成人偷拍自拍 | 日本三级2018亚洲视频 | 久久精品亚洲欧美日韩久久 | 日韩在线看片中文字幕不卡 | 性色视频免费 | 黄色三级日本三级 | 日本在线亚洲 | 黄色片网址在线观看 | a黄色一级 | 黄色大片一级片 | 欧美一级久久久久久久大 | 国产美女一区二区 | 性欧美视频在线观看 | 精品视频久久久久 | 在线播放人成午夜免费视频 | 台湾永久内衣秀86部钟真 | 国产成人亚洲综合网站不卡 |