国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

javascript - es5中Object.seal()密封對象后,可以修改對象原型上的屬性嗎?

瀏覽:114日期:2022-11-21 10:57:15

問題描述

mdn的解釋是這樣的javascript - es5中Object.seal()密封對象后,可以修改對象原型上的屬性嗎?

翻譯說的是不影響原型上繼承的屬性,但是__proto__屬性的值不能修改,然后自己就親自測試了一下,發現密封對象后原型可以刪除和修改,然后就不理解這句話的表達是否準確。。。代碼如下

let obj_origin, obj_changed;function Person() { this.name = ’sheng’; this.age = ’25’;}Person.prototype = { constructor: Person, sing () {alert(’sing’); }, prototypeTarget:’prototypeTarget’};obj_origin = new Person();obj_changed = Object.seal(obj_origin);delete obj_changed.name;delete obj_changed.__proto__.prototypeTarget;console.log(obj_changed);

javascript - es5中Object.seal()密封對象后,可以修改對象原型上的屬性嗎?原型上的prototypeTarget屬性被刪除了

問題解答

回答1:

通常情況下,一個對象是可擴展的(可以添加新的屬性)。密封一個對象會讓這個對象變的不能添加新屬性,且所有已有屬性會變的不可配置。屬性不可配置的效果就是屬性變的不可刪除,以及一個數據屬性不能被重新定義成為訪問器屬性,或者反之。但屬性的值仍然可以修改。嘗試刪除一個密封對象的屬性或者將某個密封對象的屬性從數據屬性轉換成訪問器屬性,結果會靜默失敗或拋出TypeError 異常(嚴格模式)。

不會影響從原型鏈上繼承的屬性。但 proto 屬性的值也會不能修改。

資料來自:https://developer.mozilla.org...

回答2:

_proto_是內部私有屬性 而不是原型屬性

詳情可閱讀 https://developer.mozilla.org...

標簽: JavaScript
主站蜘蛛池模板: 国产成人精品一区 | 国产精彩视频在线观看 | 日韩视频一区二区三区 | 91久热| 久久最新免费视频 | 日韩18在线观看 | 91精品久久久久亚洲国产 | 国产成人毛片亚洲精品不卡 | 亚洲一区二区影视 | 日本高清视频一区二区 | 99精品视频在线 | 久久国产午夜精品理论片34页 | 亚洲天堂一区二区在线观看 | 国产国产成人人免费影院 | 国产精品视频一区二区猎奇 | 欧美黄色免费网站 | 中文一级毛片 | 日本特黄特色高清免费视频 | 91精品啪在线看国产网站 | 久久久久欧美情爱精品 | 永久黄网站色视频免费网站 | 欧美另类videosbestsex久久 | 久久九九国产 | 午夜亚洲国产成人不卡在线 | 一级特黄色毛片免费看 | 精品日韩二区三区精品视频 | 成 人色 网 站 欧美大片在线观看 | 美女一级片 | 欧美中文字幕在线视频 | 曰本美女高清在线观看免费 | 免费一级肉体全黄毛片高清 | 美女作爱网站 | 综合亚洲一区二区三区 | 男人天堂国产 | 欧美性视频xxxxxxxx | 美国一级做a一级视频 | 在线视频一区二区日韩国产 | 亚洲成a人片在线观看 欧美 | 国产高清视频免费观看 | 男女午夜性爽快免费视频不卡 | 久久黄网 |