是否可以设置javascript原型?
例如,我使用数组是否可以设置javascript原型?,javascript,Javascript,例如,我使用数组 let arr =[1, 2, 3, 4]; Array.prototype.a = function() { //code } 是否可以创建原型属性。 它是一个函数,它将使任何元素加倍。尽管您可以修改内部(内置)对象(如数组)的.prototype属性,但这被认为是一种不好的做法,因为其他人可能会认为您的更改无效(例如命名冲突)。最好不要去管本质 但是,您可以使用原型继承来扩展内部对象,而无需直接修改它们 类MyArray扩展了数组{ 静态[符
let arr =[1, 2, 3, 4];
Array.prototype.a = function() {
//code
}
是否可以创建原型属性。
它是一个函数,它将使任何元素加倍。尽管您可以修改内部(内置)对象(如数组
)的.prototype
属性,但这被认为是一种不好的做法,因为其他人可能会认为您的更改无效(例如命名冲突)。最好不要去管本质
但是,您可以使用原型继承来扩展内部对象,而无需直接修改它们
类MyArray扩展了数组{
静态[符号.种类]=数组
*[符号.迭代器](){
对于(设x=0;xi)MyArray实例)//false
log(arr.map((i)=>i)instanceof Array)//true
是的,您可以这样做so@CertainPerformance-获得许可总是好的:pYou可以这样做,但通常(除非您在自己的类型上这样做)。请注意,如果您向数组
原型添加了一些内容,那么所有数组都将具有此.a
,即使是不需要它的数组。它可能会导致另一个问题effects@TTT此
引用值,[1,2,3,4]
,在您的案例中。
arr.a(); //return [2, 4, 6, 8]