javascript仿php的print_r函数输出json数据【转】

    function print_r(theObj) {
        var retStr = '';
        if (typeof theObj == 'object') {
            retStr += '<div style="font-family:Tahoma; font-size:7pt;">';
            for (var p in theObj) {
                if (typeof theObj[p] == 'object') {
                    retStr += '<div><b>['+p+'] => ' + typeof(theObj) + '</b></div>';
                    retStr += '<div style="padding-left:25px;">' + print_r(theObj[p]) + '</div>';
                } else {
                    retStr += '<div>['+p+'] => <b>' + theObj[p] + '</b></div>';
                }
            }
            retStr += '</div>';
        }
        return retStr;
    }

在需要使用的地方调用这个函数就行啦。

若还使用Jquery的话,可以将它做成Jquery的一个插件。

    (function($){
        $.fn.print_r = function(json){
            return $(this).each(function(e){
                $(this).html(_print_r(json));
            })
        }
        function _print_r(theObj) {
            var retStr = '';
            if (typeof theObj == 'object') {
                retStr += '<div style="font-size:12px;">';
                for (var p in theObj) {
                    if (typeof theObj[p] == 'object') {
                        retStr += '<div><b>['+p+'] => ' + typeof(theObj) + '</b></div>';
                        retStr += '<div style="padding-left:25px;">' + _print_r(theObj[p]) + '</div>';
                    } else {
                        retStr += '<div>['+p+'] => <b>' + theObj[p] + '</b></div>';
                    }
                }
                retStr += '</div>';
            }
            return retStr;
        }   
        $.print_r = function(json){
            return _print_r(json);
        }
    })(jQuery);

 

posted @ 2013-03-26 17:11  浪漫小生  阅读(218)  评论(0编辑  收藏  举报