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 相关文章推荐
大家未必知道的Js技巧收藏
Apr 07 Javascript
XENON基于JSON变种
Jul 27 Javascript
jquery实现的让超出显示范围外的导航自动固定屏幕最顶上
Sep 22 Javascript
JavaScript程序员应该知道的45个实用技巧
Mar 04 Javascript
jQuery中before()方法用法实例
Dec 25 Javascript
jquery实现动态操作select选中
Feb 11 Javascript
详述JavaScript实现继承的几种方式(推荐)
Mar 22 Javascript
在百度搜索结果中去除掉一些网站的资料(通过js控制不让显示)
May 02 Javascript
JavaScript实现单击网页任意位置打开新窗口与关闭窗口的方法
Sep 21 Javascript
js合并两个数组生成合并后的key:value数组
May 09 Javascript
JavaScript 中的 this 工作原理
Jun 20 Javascript
vue如何截取字符串
May 06 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
php最简单的删除目录与文件实现方法
2014/11/28 PHP
php使用递归计算文件夹大小
2014/12/24 PHP
php用xpath解析html的代码实例讲解
2019/02/14 PHP
php连接mysql数据库最简单的实现方法
2019/09/24 PHP
Laravel实现通过blade模板引擎渲染视图
2019/10/25 PHP
JavaScript replace(rgExp,fn)正则替换的用法
2010/03/04 Javascript
javascript写的简单的计算器,内容很多,方法实用,推荐
2011/12/29 Javascript
Jquery attr(&quot;checked&quot;) 返回checked或undefined 获取选中失效
2013/10/10 Javascript
node.js中的fs.fsyncSync方法使用说明
2014/12/15 Javascript
js控制文本框只输入数字和小数点的方法
2015/03/10 Javascript
jquery radio的取值_radio的选中_radio的重置方法
2016/09/20 Javascript
jQuery实现可拖动进度条实例代码
2017/06/21 jQuery
js轮播图的插件化封装详解
2017/07/17 Javascript
css和js实现弹出登录居中界面完整代码
2017/11/26 Javascript
vue-video-player 通过自定义按钮组件实现全屏切换效果【推荐】
2018/08/29 Javascript
微信上传视频文件提示(推荐)
2018/11/22 Javascript
vue 中 beforeRouteEnter 死循环的问题
2019/04/23 Javascript
vue实现一个矩形标记区域(rectangle marker)的方法
2020/10/28 Javascript
python局域网ip扫描示例分享
2014/04/03 Python
Python文件监听工具pyinotify与watchdog实例
2018/10/15 Python
python中p-value的实现方式
2019/12/16 Python
python基于opencv检测程序运行效率
2019/12/28 Python
python时间与Unix时间戳相互转换方法详解
2020/02/13 Python
python如何设置静态变量
2020/09/07 Python
python中scipy.stats产生随机数实例讲解
2021/02/19 Python
CSS3 仿微信聊天小气泡实例代码
2017/04/05 HTML / CSS
英国奢侈品网站:MatchesFashion
2016/12/16 全球购物
俄罗斯名牌服装网上商店:UNIQUE FABRIC
2019/07/25 全球购物
敬老院标语
2014/06/27 职场文书
住房租房协议书
2014/08/20 职场文书
2016年国庆节假期旅游工作总结
2016/04/01 职场文书
创业计划书之校园跑腿公司
2019/09/24 职场文书
Golang的继承模拟实例
2021/06/30 Golang
DE1107机评
2022/04/05 无线电
python实现手机推送 代码也就10行左右
2022/04/12 Python
详解OpenCV获取高动态范围(HDR)成像
2022/04/29 Python