最近参与一个PHP与flash交互的项目,数据格式采用json。一些返回信息中包含中文,中文字符值大于 255 的以 %uxxxx 格式存储,不利于调试代码。同事提供了一个网址,可以把json数据通过Ajax在服务器端解析,并返回经过语法着色的关联数组,非常清晰。
我抱着学习的目的,用js模拟了该功能。主要是递归处理对象:
$(document).ready(function(){
$('#btn').click(function(){
var jsonStr = $('#jsonData').val();
var json = eval('('+jsonStr+')');
(function(){
var print_r = function(o, depth) {
var result = '';
depth || (depth=1);
var indent = new Array(4*depth+1).join(' ');
var indentNext = new Array(4*(depth+1)+1).join(' ');
var indentNextTwo = new Array(4*(depth+2)+1).join(' ');
var tmp = '';
var type = typeof o;
switch(type) {
case 'string':
case 'number':
case 'boolean':
case 'undefined':
case 'function':
tmp += indent + indentNext + o + "\n";
break;
case 'object':
default:
for(var key in o) {
tmp += indentNextTwo + '[' + key + '] = ';
tmp += print_r(o[key], (depth+1));
}
}
result += type + "\n";
result += indentNext + '(' + "\n";
result += tmp;
result += indentNext + ')' + "\n";
return result;
};
alert(print_r(json));
}(json));
});
});
注:上述代码需要jquery框架
-------------
演示
-------------
输入:{"error":["\u627e\u4e0d\u5230\u8be5\u6848\u4ef6\u4fe1\u606f"]}
弹出:
完整的html demo文件,请下载。
分享到:
相关推荐
php print_r方法可以把变量打印显示,使变量易于理解。如果变量是string,integer或float,将打印变量值本身,如果变量是array,将会按照一定格式显示键和元素。object与数组类似。print_r用于打印数组较多。 php...
Javascript print_r 美化器。 ============================== 将 PHP print_r 函数的标量字符串输出转换为可折叠的 DOM 结构。 演示: : 对于 PHP 代码,您可以使用print_rc ( print_rc.php ) 函数而不是print...
print_r() 和 var_dump() 函数可以打印输出整个数组内容及结构。 print_r() 利用 print_r() 函数可以打印输出整个数组内容及结构,按照一定格式显示键和元素。注意 print_r() 函数不仅是只用于打印,实际它是用于...
lodop.ocx文件 CAOSOFT_WEB_PRINT_lodop.ocx,专用于打印操作 CAOSOFT_WEB_PRINT_lodop.ocx CAOSOFT_WEB_PRINT_lodop.ocx
firefox下,javascript的print_r实现,原创
LodopFuncs.js 4 三、控件参数 6 Caption 6 Color 6 Border 6 四、功能函数 7 1、基本函数 7 VERSION 7 PRINT_INIT 7 SET_PRINT_PAGESIZE 8 ADD_PRINT_HTM 8 ADD_PRINT_TABLE 9 ADD_PRINT_URL 11 ADD_PRINT_TEXT 11 ...
echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用) print() 只能打印出简单类型变量的值(如int,string) print_r() 可以打印出复杂类型变量的值(如数组,对象) echo 输出...
因为php的print_r比较好用同时js却没有这个功能于是自己就写了一个,感兴趣的你可不要错过了哈,希望本文对你提高知识有所帮助
该文件主要是针对HP_LaserJet_MFP_M436_Print_Scan_Drivers的驱动,win10上安装该打印机,驱动可能无法安装,手动安装该驱动后再重新添加打印机 ,即可正常使用HP436 系列打印机
代码如下: //theOb(json数据) function print_r(theObj) { var retStr = ”; if (typeof theObj == ‘object’) { retStr += ‘’; for (var p in theObj) { if (typeof theObj[p] == ‘object’) { retStr += ...
PHP print_r的函数很好用,可以用来打印数组、对象等的结构与数据,可惜JavaScript并没有原生提供类似的函数。不过我们可以试着自己来实现这个函数,下面提供一些方法与思路
javascript中的var_dump、print_r; 在PHP中,有var_dump & print_r这样的好东西,那就带入javascript吧。 < script type = "text/javascript" src = ...
手机在同一局域网中(同一无线路由器内)可以实现无线打印。如果安装完成后然无法打印则需要安装补丁(补丁分32位系统和64位系统),按照自己系统位数安装补丁(双击即可)
PHP print_r方法可以把变量打印显示,使变量易于理解。如果变量是string,integer或float,将打印变量值本身,如果变量是array,将会按照一定格式显示键和元素。object与数组类似。print_r用于打印数组较多。 php原生...
SSD5课程中打印模拟实验的答案,使用队列来完成题目的要求。print simulation。
请说明echo、print、print_r的区别 看着很简单,一般会出现在初中级的笔试题中。但是要真正说明白这些语言结构或者函数也不是那么简单的事情。今天我们就来好好看看这些打印输出相关的内容。 echo 最基础的输出语句...
print_yourself VR眼镜图纸.pdfprint_yourself VR眼镜图纸.pdfprint_yourself VR眼镜图纸.pdfprint_yourself VR眼镜图纸.pdfprint_yourself VR眼镜图纸.pdfprint_yourself VR眼镜图纸.pdf
blue_print_2