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 相关文章推荐
网页设计常用的一些技巧
Dec 22 Javascript
JS验证日期的格式YYYY-mm-dd 具体实现
Jun 29 Javascript
javascript函数重载解决方案分享
Feb 19 Javascript
简单的js图片轮换代码(js图片轮播)
May 06 Javascript
JavaScript简单表格编辑功能实现方法
Apr 16 Javascript
jQuery滚动条插件nanoscroller使用指南
Apr 21 Javascript
深入解读JavaScript中的Iterator和for-of循环
Jul 28 Javascript
javascript 中的console.log和弹出窗口alert
Aug 30 Javascript
基于webpack4+vue-cli3项目实现换肤功能
Jul 17 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
Jul 01 Javascript
Vue CLI中模式与环境变量的深入详解
May 30 Vue.js
Vue2.0搭建脚手架
Mar 13 Vue.js
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
深入理解php的MySQL连接类
2013/06/07 PHP
PHP中大于2038年时间戳的问题处理方案
2015/03/03 PHP
php简单判断两个字符串是否相等的方法
2015/07/13 PHP
PHP基于Redis消息队列实现发布微博的方法
2017/05/03 PHP
比较全的JS checkbox全选、取消全选、删除功能代码
2008/12/19 Javascript
Mootools 1.2教程 事件处理
2009/09/15 Javascript
jQuery选择器全集详解
2014/11/24 Javascript
AngularJS中取消对HTML片段转义的方法例子
2015/01/04 Javascript
jQuery点缩略图弹出层显示大图片
2015/02/13 Javascript
js实现跨域的几种方法汇总(图片ping、JSONP和CORS)
2015/10/25 Javascript
基于nodejs+express(4.x+)实现文件上传功能
2015/11/23 NodeJs
Vue.js系列之项目结构说明(2)
2017/01/03 Javascript
使用原生js写ajax实例(推荐)
2017/05/31 Javascript
JavaScript使用递归和循环实现阶乘的实例代码
2018/08/28 Javascript
elementUI Tree 树形控件的官方使用文档
2019/04/25 Javascript
支付宝小程序实现省市区三级联动
2020/06/21 Javascript
html中创建并调用vue组件的几种方法汇总
2020/11/17 Javascript
[01:07:57]DOTA2-DPC中国联赛 正赛 Ehome vs Magma BO3 第二场 1月19日
2021/03/11 DOTA
python获取本机外网ip的方法
2015/04/15 Python
python的numpy模块安装不成功简单解决方法总结
2017/12/23 Python
在Pycharm中执行scrapy命令的方法
2019/01/16 Python
Django利用cookie保存用户登录信息的简单实现方法
2019/05/27 Python
Python实现Singleton模式的方式详解
2019/08/08 Python
python文件路径操作方法总结
2020/12/21 Python
美国最大网上鞋店:Zappos
2016/07/25 全球购物
Allsole美国/加拿大:英国一家专门出售品牌鞋子的网站
2018/10/21 全球购物
Linux如何压缩可执行文件
2014/03/27 面试题
策划助理岗位职责
2013/11/18 职场文书
传播学专业毕业生自荐书
2014/07/01 职场文书
暑期培训班策划方案
2014/08/26 职场文书
党的生日演讲稿
2014/09/10 职场文书
2014年职称评定工作总结
2014/11/26 职场文书
2015年库房工作总结
2015/04/30 职场文书
地道战观后感2000字
2015/06/04 职场文书
golang switch语句的灵活写法介绍
2021/05/06 Golang
详解Go语言中配置文件使用与日志配置
2022/06/01 Golang