JOSN对象与JSON字符串的相互转化
前端在与服务端通信时.会与JSON JSON字符串经常打交道.
什么是JSON? 如果不太清楚可以点击这里
服务端传过来的数据一般都是一串字符串,jQuery AJAX中的success函数的第一个形参是一个JSON对象,其实在里面也是由字符串转化来的
一,JSON对象转为为JSON字符串
JavaScript里面有内置的JSON.stringfiy函数,但是只兼容IE8及以上,对于需要兼容IE7的网站还是要手写的
代码如下,没有对特殊的字符串进行处理,如果有需要可以自己添加一个过滤函数
var stringfiy = function (obj) {
function str(key, holder) {
var value = holder[key], v = "", partical = [];
var type = toString.call(value).replace(/^\[object\s(\w+)\]$/i, function(str, $1){
return $1.toLowerCase();
});
switch (type) {
case "number":
return String(value);
case "string":
return quote(value);
case "boolean":
return String(value);
case "null" :
return "null";
case "array":
var len = value.length;
for (var i = 0; i < len; i++ ) {
partical.push(str(i, value));
}
return "[" + partical.join(",") + "]";
case "object" :
for (var p in value) {
partical.push("\"" + p +"\":"+str(p, value));
}
return "{" + partical.join(",") + "}";
}
}
return str("", {"": obj}) ;
};
二, JSON字符串转化JSON对象
JavaScript里面也有JSON.parse方法,兼容性与JSON.stringify是相同的,而且他不能解析非标准的JSON对象
一,使用eval
function evalJson(text) {
var obj = null;
try {
if (/^\s*\{/.test(text)) {
text = "(" + text + ")";
}
obj = eval(text);
} catch (e) { }
return obj;
}
JOSN对象与JSON字符串的相互转化的更多相关文章
- JavaScript中JSON对象和JSON字符串的相互转化
一.JSON字符串转换为JSON对象 var str = '{"name":"cxh","sex":"man",&quo ...
- JS中JSON对象和JSON字符串的相互转化
转:http://www.cnblogs.com/wbyp/p/7086318.html 一.JSON字符串转换为JSON对象 var str = '{"name":"c ...
- fastjson: json对象,json对象数组,javabean对象,json字符串之间的相互转化
fastjson: json对象,json对象数组,javabean对象,json字符串之间的相互转化 在开发过程中,经常需要和前端交互数据,数据交互的格式都是JSON,在此过程中免不了json字符串 ...
- 使用Google的Gson实现对象和json字符串之间的转换
使用Google的Gson实现对象和json字符串之间的转换 需要gson.jar 1.JsonUtil.java package com.snail.json; import java.lang.r ...
- jQuery中json对象与json字符串互换
json字符串转json对象:jQuery.parseJSON(jsonStr); json对象转json字符串:JSON.stringify(jsonObj); 根据“|”把字符串变成数组.spli ...
- 前端页面使用 Json对象与Json字符串之间的互相转换
前言 在前端页面很多时候都会用到Json这种格式的数据,最近没有前端,后端的我也要什么都要搞,对于Json对象与Json字符串之间的转换终于摸清楚了几种方式,归纳如下! 一:Json对象转换为json ...
- Json对象与Json字符串互转(转载)
一.jQuery插件支持的转换方式 1 $.paseJSON(jsonstr);//将json字符串转换为json对象 二.浏览器支持的转换方式(Firefox,Chrome,Opera,Safair ...
- [TypeScript] TypeScript对象转JSON字符串范例
[TypeScript] TypeScript对象转JSON字符串范例 Playground http://tinyurl.com/njbrnrv Samples class DataTable { ...
- json对象和json字符串有啥区别啊
json对象可以通过javascript存取属性!json对象装成json字符串经常用于前后台传输数据! 如果你在前台使用,那么Json对象可以通过xx.name来调用,如果是字符串,那么就是字符串了 ...
随机推荐
- Perl,Python,Ruby,Javascript 四种脚本语言比较
Perl 为了选择一个合适的脚本语言学习,今天查了不少有关Perl,Python,Ruby,Javascript的东西,可是发现各大阵营的人都在吹捧自己喜欢的语言,不过最没有争议的应该是Javascr ...
- ubuntu下eclipse突然崩溃,解决办法
rm YOUR_WORKSPACE/.metadata/.plugins/org.eclipse.core.resources/.snap 抛出的一场如下: !SESSION 2013-09-30 1 ...
- 三年所有JAVA技术文档列表
学习工作流workflow管理基础概念.pdf 深入浅出Struts2(PDF).zip 深入浅出Hibernate.pdf 敏捷软件开发:原则.模式与实践.rar 精通Oracle.10g.Pl.S ...
- nohup.out
nohup.out 文件的产生 linux的nohup命令的用法 不输出nohup.out nohup node app.js > /dev/null 2>&1 &
- 【转】Android中自定义控件的步骤
原文网址:http://blog.csdn.net/lianchen/article/details/48038969 Android开发中难免遇到需要自定义控件的需求,有些是产品的要求在Androi ...
- (转载)按行合并两个sql的查询结果
(转载)http://blog.csdn.net/wxwstrue/article/details/6784774 Union all join 是平行合并 为水平连接 Union all 是垂直合并 ...
- EF多表查询方式
5, 连接 可以的连接有Join 和 GroupJoin 方法.GroupJoin组联接等效于左外部联接,它返回第一个(左侧)数据源的每个元素(即使其他数据源中没有关联元素). using (var ...
- 天津Uber优步司机奖励政策(2月1日~2月7日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- Hyperic Agent 安装配置报 - No token file found, waiting for Agent to initialize
本人经过跟VMWare 支持的多方努力,问题终于得到解决,方案如下: * Stop the agent Windows service. * Make sure all the agent proce ...
- Android.mk各种文件编译汇总
一.源代码编译 1.1 so预编译 LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := libAppArea LOCAL ...