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 相关文章推荐
JavaScript 模仿vbs中的 DateAdd() 函数的代码
Aug 13 Javascript
javascript中用星号表示预录入内容的实现代码
Jan 08 Javascript
jQuery中[attribute*=value]选择器用法实例
Dec 31 Javascript
jQuery+CSS3实现树叶飘落特效
Feb 01 Javascript
js实现鼠标感应图片展示的方法
Feb 27 Javascript
浅谈利用JavaScript进行的DDoS攻击原理与防御
Jun 04 Javascript
JavaScript编写Chrome扩展实现与浏览器的交互及时间通知
May 16 Javascript
JavaScript实现简单的拖动效果
Jul 02 Javascript
JavaScript实现二分查找实例代码
Feb 22 Javascript
详解Koa中更方便简单发送响应的方式
Jul 20 Javascript
angularjs1.X 重构controller 的方法小结
Aug 15 Javascript
游戏开发中如何使用CocosCreator进行音效处理
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
Discuz 模板引擎的封装类代码
2008/07/18 PHP
php+mysql实现简单登录注册修改密码网页
2016/11/30 PHP
PHP实现微信退款功能
2018/10/02 PHP
PHP 实现缩略图
2021/03/09 PHP
Javascript 自定义类型方法小结
2010/03/02 Javascript
json数据与字符串的相互转化示例
2013/09/18 Javascript
js下拉菜单语言选项简单实现
2013/09/23 Javascript
EasyUI中datagrid在ie下reload失败解决方案
2015/03/09 Javascript
JavaScript实现LI列表数据绑定的方法
2015/08/04 Javascript
Jquery表单验证失败后不提交的解决方法
2016/10/18 Javascript
正则表达式替换html元素属性的方法
2016/11/26 Javascript
Node.js调用fs.renameSync报错(Error: EXDEV, cross-device link not permitted)
2017/12/27 Javascript
jQuery获取随机颜色的实例代码
2018/05/21 jQuery
JavaScript实现数字前补“0”的五种方法示例
2019/01/03 Javascript
vue实现滑动超出指定距离回顶部功能
2019/07/31 Javascript
vue动态子组件的两种实现方式
2019/09/01 Javascript
Vue 实现从文件中获取文本信息的方法详解
2019/10/16 Javascript
Python中的time模块与datetime模块用法总结
2016/06/30 Python
使用PyTorch将文件夹下的图片分为训练集和验证集实例
2020/01/08 Python
Java Spring项目国际化(i18n)详细方法与实例
2020/03/20 Python
在主流系统之上安装Pygame的方法
2020/05/20 Python
Python reques接口测试框架实现代码
2020/07/28 Python
Python基于xlrd模块处理合并单元格
2020/07/28 Python
pytorch 计算Parameter和FLOP的操作
2021/03/04 Python
买卖正宗运动鞋:GOAT
2019/12/06 全球购物
介绍一下Cookie和Session及他们之间的区别
2012/11/20 面试题
机械化及自动化毕业生的自我评价分享
2013/11/06 职场文书
好家长事迹材料
2014/01/23 职场文书
民警个人对照检查剖析材料
2014/09/17 职场文书
幼儿园门卫安全责任书
2015/05/08 职场文书
刑事附带民事诉讼答辩状
2015/05/22 职场文书
如何在Python中创建二叉树
2021/03/30 Python
golang如何去除多余空白字符(含制表符)
2021/04/25 Golang
PyTorch的Debug指南
2021/05/07 Python
mysql 获取相邻数据项
2022/05/11 MySQL
关于pytest结合csv模块实现csv格式的数据驱动问题
2022/05/30 Python