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

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

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

瀏覽:127日期: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
相關文章:
主站蜘蛛池模板: 亚洲一区二区免费 | 国产激情91久久精品导航 | 色综合久久天天综合网 | 一级黄色短片 | 日本淫视频 | 亚洲啪啪| 台湾佬伊人 | 成人av一区二区三区 | 日韩一区二区三区在线 | 黄a在线观看 | 国产精品久久久久久久一区二区 | 国产乱码精品1区2区3区 | 99色在线| 91资源在线 | 久久99蜜桃综合影院免费观看 | 精品av| 精品一区二区三区四区五区 | 91在线电影| 久久精品青青大伊人av | 人妖一区 | 日韩三级 | 国产精品精品 | 日韩在线免费视频 | 一级特黄网站 | 国产一区二区在线免费观看 | 亚洲 欧美 在线 一区 | 国产三级国产精品 | 国产目拍亚洲精品99久久精品 | 精品国产欧美 | 国产剧情一区二区三区 | 日日精品| 97视频在线观看网站 | 成人在线网址 | 中文字幕视频在线免费 | 欧美一区二区在线播放 | 亚洲先锋影音 | 亚洲欧美日韩精品久久亚洲区 | 97伊人| 九九综合 | 午夜精品久久久久久久久久久久 | 中文一区 |