在javascript中复制和扩展全局对象

mck*_*k89 5 javascript oop

有没有办法复制全局对象(Array,String ...),然后扩展副本的原型而不影响原始对象?我试过这个:

var copy=Array;
copy.prototype.test=2;
Run Code Online (Sandbox Code Playgroud)

但是如果我检查Array.prototype.test它是2,因为Array对象是通过引用传递的.我想知道是否有办法使"复制"变量表现得像一个数组但可以扩展而不会影响原始的Array对象.

Cod*_*uth 2

好问题。我有一种感觉,你可能必须为此编写一个包装类。您本质上要做的copy.prototype.test=2是设置一个类原型,该原型(当然)对于该类的所有实例都是可见的。