Javascriptでオブジェクト解析

ブラウザ向けのJavascriptの開発環境はだいぶ充実してきた感がある今日この頃ですけど、PhotoShopとか、こうしたキワモノを扱う時にはweb上の情報も不足していてなかなか欲しい情報が得られません・・・

こうした時はオブジェクト自身に聞くのが一番!っとリバースエンジニアリングとかそうした機能がほしぃですよね。
オブジェクト毎のメソッド一覧とか引数、戻り値のリファレンス、クラス変数(プロパティ/フィールド)の一覧があると色々助かるんだけど。。。

っとうわけで、なんちゃって解析をしたのがPhotoshop+Javascriptでサムネールに載せた資料でした。

これはどうやって捕ったかというと


itemList = new Array();
for(hoge in object){
  itemList[itemList.length] = hoge;
}

っとして、itemListをテキストに吐き出して拾い上げてつくりました。
最初は


analystObj = {methods: new Array(),
              property:new Array(),
              perce:function(obj){
                  for(hoge in obj){
                      if(typeof eval("obj."+hoge) == 'function'){
                         this.methods[this.methods.length] = hoge;
                      }else{
                         this.property[this.property.length] = hoge;
                      }
                  }
              },
              };

こんな感じで解析用オブジェクトを作って。。。っと思もったんですけど、evalが毒でPhotoshopに怒られてしまって上手くいかなかったんですよね(^^;
try/catchで回避できないかとやってみたんですけど、ほとんど取れなくて実質意味がなかったのであきらめちゃいました。。。

しばらくNativeなJavascriptからも離れてしまっていたので思い出す良い切っ掛けになりました。

こうしたらいいんじゃないの?みたいな突っ込みありましたら是非是非お願いします!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です