Arrayインスタンスを拡張したい。 prototype汚染はさせない Array.prototypeの上書き禁止 Arrayオブジェクトと同じ挙動 という条件。 下記、EXArrayというコンストラクタをArrayの様な扱いにしたいわけだ。 テストコードでも書いているが instanceof obj instanceof Array // true であること obj instanceof EXArray // true であること 配列要素は hasOwnProperty で true が返ること toStringが配列っぽく返ってくること までは実現できている。しかし、 JSON.stringify(obj) が Arrayっぽくない obj.toSource()がTypeError: Array.prototype.toSource called on incompatible O