Javascriptでvar_dumpしたいと思って探したら、もっと便利になった。

Javascriptで、PHPのvar_dumpっぽい事が出来ないかな~と思って探してみたら、
prettyprintというライブラリを見つけました。
JavaScriptのvar_dump·prettyPrint.js MOONGIFT
http://github.com/jamespadolsey/prettyPrint.js


使ってみた感想。
 PHP本家のvar_dumpよりも、キレイで見やすい!


PHPのvar_dumpは、内容をstringベタ書きで出すので、
複雑になると、構造が非常にわかりずらくなります。


だから、「PHPのvar_dumpを忠実に再現」されると、
 ある意味困る ^^;


でも、prettyPrintは、
「ブラウザで見るphpinfoっぽく、var_dumpできる」*1


今後もっと使いやすいように、
var_dump名でextends関数など追加してしまいました。
  いやあ便利 ^^


もし同様の拡張なさそうだったら、かつgit判ったら、jQueryフリー ^^; にして、改めてコミットしますが・・・・


ひとまず、手元のSVN差分@jQuery使用前提

Index: prettyprint.js
===================================================================
--- prettyprint.js	(リビジョン 188)
+++ prettyprint.js	(リビジョン 189)
@@ -4,6 +4,14 @@
  UPDATED 07-06-2009
 */
 
+// add by Cake start
+var var_dump = (function(Obj){
+	var ppTable = prettyPrint(Obj);
+	$('body > *:first').before(ppTable);
+
+});
+// add by Cake end
+
 var prettyPrint = (function(){
 	
 	/* These "util" functions are not part of the core


使用する際は、

元のHTMLで

などで読み込み

当該のJavascript内では

var_dump(Ojbect);

と書く。


これで Object の内容が、そのページのbodyタグ内の冒頭に出力されます。*2

*1:MOONGIFTさんのサンプル例参照

*2:bodyタグ内が全くのカラッポだと、エラーになるかと思います…Ajax対応などで、タグを吐かないver要りますかね。。。