Javascript Can';在firefox上覆盖Function.prototype?

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} 以及关

以下Javascript代码没有预期效果:

Function.prototype={test:“foo”}

Function.prototype显然不会因分配而改变(至少在firefox上是这样)。为什么会这样?有没有办法覆盖它?

来自:

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]}