Object 汚染とは 簡単に言うと Object.prototype を拡張したときに、すべての for in に影響を与えてしまって、いろんなことが困る。という問題である。 DontEnum という内部属性をスクリプトから与える手段がないために発生する。 Object.prototype.hoge = 'ほげ'; for (var p in {}) alert(p); // hoge と表示される ActionScript では setPropertyIsEnumerable という関数が Object.prototype に宣言されている。 これを使うことによって、安全にすべてのオブジェクトにメソッドやプロバティを追加することができる。 例えば 以下のソースをコンパイルすると package { import flash.display.Sprite; import flash.te