鍍金池/ 問答/Python  HTML/ JavaScript 怎樣禁止對象某個屬性被從寫?

JavaScript 怎樣禁止對象某個屬性被從寫?

示例:

var Demo = function() {
    //...
}

Demo.prototype = {xxx}

以問:我如何禁止Demo的prototype被擴展、重寫、覆蓋呢?

回答
編輯回答
離人歸

禁止擴展(不能添加新屬性):

Object.preventExtensions

密封對象(不能添加新屬性,不能刪除已有屬性):

Object.seal

凍結(jié)對象(不能添加新屬性,不能修改已有屬性,不能刪除已有屬性)

Object.freeze
2018年6月17日 01:03
編輯回答
愛礙唉
var proto = Demo.prototype
Object.defineProperty(Demo, 'prototype', {value:proto,writable:false,configurable:false})
Object.freeze(proto)
2018年6月16日 07:39