Javascript生成json的函数代码(可以用php的json_decode解码)


Posted in Javascript onJune 11, 2012

但是有个问题
虽然JS解码JSON非常方便,但是编码似乎没有什么好办法…
本着能懒即懒,不能懒也尽量懒的原则,古狗了一下
还真让我发现了
PHP里直接用json_decode就可以解码,用起来相当方便

function json_encode_js(aaa){ 
function je(str){ 
var a=[],i=0; 
var pcs="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; 
for (;i<str.length;i++){ 
if(pcs.indexOf(str[i]) == -1) 
a[i]="\\u"+("0000"+str.charCodeAt(i).toString(16)).slice(-4); 
else 
a[i]=str[i]; 
} 
return a.join(""); 
} 
var i,s,a,aa=[]; 
if(typeof(aaa)!="object") {alert("ERROR json");return;} 
for(i in aaa){ 
s=aaa[i]; 
a='"'+je(i)+'":'; 
if(typeof(s)=='object'){ 
a+=json_encode_js(s); 
}else{ 
if(typeof(s)=='string') 
a+='"'+je(s)+'"'; 
else if(typeof(s)=='number') 
a+=s; 
} 
aa[aa.length]=a; 
} 
return "{"+aa.join(",")+"}"; 
}
Javascript 相关文章推荐
JQuery Mobile 弹出式登录框的实现方法
May 28 Javascript
BootStrap智能表单实战系列(四)表单布局介绍
Jun 13 Javascript
Html5 js实现手风琴效果
Apr 17 Javascript
Vue 2.x教程之基础API
Mar 06 Javascript
bootstrap datetimepicker 日期插件在火狐下出现一条报错信息的原因分析及解决办法
Mar 08 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
May 03 Javascript
浅谈angular4生命周期钩子
Sep 05 Javascript
jquery 一键复制到剪切板的实例
Sep 20 jQuery
Vue2仿淘宝实现省市区三级联动
Apr 15 Javascript
Vue多种方法实现表头和首列固定的示例代码
Feb 02 Javascript
微信小程序实现注册登录功能(表单校验、错误提示)
Dec 10 Javascript
vue项目前端微信JSAPI与外部H5支付相关实现过程及常见问题
Apr 14 Javascript
javascript倒计时功能实现代码
Jun 07 #Javascript
基于jQuery的计算文本框字数的代码
Jun 06 #Javascript
Javascript 页面模板化很多人没有使用过的方法
Jun 05 #Javascript
Javascript创建自定义对象 创建Object实例添加属性和方法
Jun 04 #Javascript
Javascript数组的排序 sort()方法和reverse()方法
Jun 04 #Javascript
javascript中获取下个月一号,是星期几
Jun 01 #Javascript
一行代码告别document.getElementById
Jun 01 #Javascript
You might like
ThinkPHP 防止表单重复提交的方法
2011/08/08 PHP
PHP中round()函数对浮点数进行四舍五入的方法
2014/11/19 PHP
php使用str_replace实现输入框回车替换br的方法
2014/11/24 PHP
php5.3不能连接mssql数据库的解决方法
2014/12/27 PHP
php二维码生成以及下载实现
2017/09/28 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
thinkPHP3.2使用RBAC实现权限管理的实现
2019/08/27 PHP
[全兼容哦]--实用、简洁、炫酷的页面转入效果loing
2007/05/07 Javascript
Iframe 自适应高度并实时监控高度变化的js代码
2009/10/30 Javascript
基于jquery的无缝循环新闻列表插件
2011/03/07 Javascript
JavaScript 实现鼠标拖动元素实例代码
2014/02/24 Javascript
javascript实现复选框选中属性
2015/03/25 Javascript
JavaScript编写九九乘法表(两种任选)
2017/02/04 Javascript
解决webpack -p压缩打包react报语法错误的方法
2017/07/03 Javascript
three.js实现3D影院的原理的代码分析
2017/12/18 Javascript
JavaScript 中使用 Generator的方法
2017/12/29 Javascript
VUE2.0+ElementUI2.0表格el-table实现表头扩展el-tooltip
2018/11/30 Javascript
新版小程序登录授权的方法
2018/12/12 Javascript
JS闭包原理与应用经典示例
2018/12/20 Javascript
Flexible.js可伸缩布局实现方法详解
2020/11/13 Javascript
从零学python系列之教你如何根据图片生成字符画
2014/05/23 Python
Python3中常用的处理时间和实现定时任务的方法的介绍
2015/04/07 Python
Python温度转换实例分析
2018/01/17 Python
Python采集猫眼两万条数据 对《无名之辈》影评进行分析
2018/12/05 Python
Python可视化mhd格式和raw格式的医学图像并保存的方法
2019/01/24 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
PyCharm License Activation激活码失效问题的解决方法(图文详解)
2020/03/12 Python
Python实现打包成库供别的模块调用
2020/07/13 Python
什么是Smarty变量操作符?如何使用Smarty变量操作符
2014/07/18 面试题
如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗
2012/02/15 面试题
小学教师的自我评价范例
2013/10/31 职场文书
保护环境倡议书范文
2014/05/13 职场文书
2014年小学教研工作总结
2014/12/06 职场文书
论文答谢词
2015/01/20 职场文书
保卫工作个人总结
2015/03/03 职场文书
python利用while求100内的整数和方式
2021/11/07 Python