Object.definePropery 在 Array.prototype.push 上不起作用

Object.definePropery on Array.prototype.push doesnt work

我想在我的 Web 应用程序上无法使用 Array.prototype.push 上的覆盖选项。

我试过 Object.defineProperties(Array.prototype, "push", {writable: false});

但是得到了 Uncaught TypeError: Property description must be an object: p

我做错了什么?

谢谢

用原生对象的原型来做这件事真的不是一个好主意,这对性能有很大的影响here

现在您已经收到警告,如果您想继续,只需使用:

Object.defineProperty(Array.prototype, "push", {writable: false});

没有性能成本的更好解决方案是将 writable 设置为 false,专门针对您想要 "protect".

的数组对象