6

たとえば、Arrayデータ型には という関数がありpop()、次を使用して追加されると思います。

Array.prototype.pop = function(){ /* ... */ };

しかし、私が知る限り、それを列挙不可能にする唯一の方法は、次のようなことをすることです:

Object.defineProperty(Array.prototype, "pop", { enumerable: false });

これは、すべてのブラウザーでサポートされているわけではありません。

Array.prototype.doSomething= function(){ };
var arr = [];

console.log(arr); // [doSomething: function]

では、なぜdoSomethingここに表示されるのに、表示されpop()ないのでしょうか? 両方ともプロトタイプに追加されていませんか?

4

1 に答える 1