示例:var Demo = function() { //...}Demo.prototype = {xxx}以问:我如何禁止Demo的prototype被扩展、重写、覆盖呢?
2 回答
元芳怎么了
TA贡献1798条经验 获得超7个赞
var proto = Demo.prototype
Object.defineProperty(Demo, 'prototype', {value:proto,writable:false,configurable:false})
Object.freeze(proto)
翻阅古今
TA贡献1780条经验 获得超5个赞
禁止扩展(不能添加新属性):
Object.preventExtensions
密封对象(不能添加新属性,不能删除已有属性):
Object.seal
冻结对象(不能添加新属性,不能修改已有属性,不能删除已有属性)
Object.freeze
添加回答
举报
0/150
提交
取消