Javascript Can';在firefox上覆盖Function.prototype?
以下Javascript代码没有预期效果: Function.prototype={test:“foo”} Function.prototype显然不会因分配而改变(至少在firefox上是这样)。为什么会这样?有没有办法覆盖它?来自:Javascript Can';在firefox上覆盖Function.prototype?,javascript,oop,firefox,Javascript,Oop,Firefox,以下Javascript代码没有预期效果: Function.prototype={test:“foo”} Function.prototype显然不会因分配而改变(至少在firefox上是这样)。为什么会这样?有没有办法覆盖它?来自: 15.3.3.1功能.原型 Function.prototype的初始值是标准内置函数原型对象(15.3.4) 此属性具有属性{[[Writable]]:false、[[Enumerable]]:false、[[Configurable]]:false} 以及关
15.3.3.1功能.原型
Function.prototype
的初始值是标准内置函数原型对象(15.3.4)
此属性具有属性{[[Writable]]:false、[[Enumerable]]:false、[[Configurable]]:false}
以及关于:
如果false
,ECMAScript代码尝试使用[[Put]]更改属性的[[Value]]属性将不会成功
发件人:
15.3.3.1功能.原型
Function.prototype
的初始值是标准内置函数原型对象(15.3.4)
此属性具有属性{[[Writable]]:false、[[Enumerable]]:false、[[Configurable]]:false}
以及关于:
如果false
,ECMAScript代码尝试使用[[Put]]更改属性的[[Value]]属性将不会成功
你为什么要这么做?我见过有人在他们不拥有的课程中添加东西,但是当你从
函数
中删除系统函数时,这显然很可怕。我要补充的是,firefox文档暗示了Function.prototype可以更改:@user2145275:设置函数的属性。prototype
与设置函数
的prototype
属性不同。你为什么要这样做这样做?我见过有人在他们不拥有的课程中添加东西,但是当你从函数
中删除系统函数时,这显然很可怕。我要补充的是,firefox文档暗示Function.prototype可以更改:@user2145275:设置函数的属性。prototype
与设置函数
的原型
属性不同。谢谢;我想mozilla还没有赶上最新的规格。这是否意味着无法覆盖function.prototype?我试图创建一个(构造函数)函数,它有一些额外的可继承方法。我可以直接将这些方法添加到Function.prototype,但是每个函数都会继承它们,这是不好的。在严格模式下,它将:TypeError:Cannot assign to Function()的只读属性'prototype'{[native code]}
谢谢;我想mozilla还没有赶上最新的规格。这是否意味着无法覆盖function.prototype?我试图创建一个(构造函数)函数,它有一些额外的可继承方法。我可以将这些方法直接添加到Function.prototype,但是每个函数都会继承它们,这是不好的。在严格模式下,它将:TypeError:Cannot assign to Function()的只读属性'prototype'{[native code]}