【转载】 json字符串与JSON对象

ajax中,我们自己拼接的是一个JSON对象,以为它是无数据类型的,所以JS根据其格式默认其实对象,

你要是往后台发,要先把它装换成JSON字符。

从ajax的服务器发过的,一定是字符串,你想要把它解析,很简单,把它先变成JSON对象才行。

太厉害了。

数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:
JSON字符串:
var str1 = ‘{ "name": "cxh", "sex": "man" }‘; 
JSON对象:
var str2 = { "name": "cxh", "sex": "man" };

一、JSON字符串转换为JSON对象

要使用上面的str1,必须使用下面的方法先转化为JSON对象:

//由JSON字符串转换为JSON对象

var obj = eval(‘(‘ + str + ‘)‘);

或者

var obj = str.parseJSON(); //由JSON字符串转换为JSON对象

或者

var obj = JSON.parse(str); //由JSON字符串转换为JSON对象

然后,就可以这样读取:

Alert(obj.name);

Alert(obj.sex);

特别注意:如果obj本来就是一个JSON对象,那么使用eval()函数转换后(哪怕是多次转换)还是JSON对象,但是使用parseJSON()函数处理后会有问题(抛出语法异常)。

二、可以使用toJSONString()或者全局方法JSON.stringify()将JSON对象转化为JSON字符串。

例如:

var last=obj.toJSONString(); //将JSON对象转化为JSON字符

或者

var last=JSON.stringify(obj); //将JSON对象转化为JSON字符

alert(last);

注意:
上 面的几个方法中,除了eval()函数是js自带的之外,其他的几个方法都来自json.js包。新版本的 JSON 修改了 API,将 JSON.stringify() 和 JSON.parse() 两个方法都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON()方法,则说明您的json包版本太低。

感谢   dacainiao007的原创文章,转载出处:http://blog.csdn.net/dacainiao007/article/details/8133378

时间: 2024-10-04 16:23:29

【转载】 json字符串与JSON对象的相关文章

JSON 字符串 与 java 对象之间互相转换

首先引入maven需要依赖的jar: <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency> 需要导入的类: import net.sf.json

JSON 字符串 与 java 对象的转换

jsonLib 经典文章:http://json-lib.sourceforge.net/xref-test/net/sf/json/TestJSONObject.html // 引入相应的包 //json-lib-2.2-jdk15.jar import net.sf.json.JSONArray;import net.sf.json.JSONObject; 1. //把java 对象列表转换为json对象数组,并转为字符串 JSONArray array = JSONArray.fromOb

json字符串转换为json对象

json字符串转换为json对象         var str = '{ "name": "cxh", "sex": "man" }';         1.使用eval()方法                 eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象.必须把文本包围在括号中,这样才能避免语法错误. var obj = eval('(' + str

js 将json字符串转换为json对象的方法解析(转)

js 将json字符串转换为json对象的方法解析 将json字符串转换为json对象的方法.在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键 例如: JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对象:var str2 = { "name": &

JSON字符串和JSON对象

今天来讲讲,之前虽然一直在提交数据,但是还是没有明白这个里面的区别,其实这个当javascript基础到达一定基础了,理解并不难 代码如下:var str = "{name:'David',age : '22'}"; 所以大家在控制台下看到了这个结果,typeof判断了str 是字符串; 然后看下js对象: var obj = {name:'David',age'22'}; 大家看得出就是这个区别 在用ajax 传输数据的时候 我们一般采用json字符串来传递,所以就牵涉到字符串与对象

Json对象与Json字符串的转化、JSON字符串与Java对象的转换

Json对象与Json字符串的转化.JSON字符串与Java对象的转换 一.Json对象与Json字符串的转化 1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象 2.浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器: JSON.stringify(obj)将JSON转为字符串.JSON.parse(string)

js 将json字符串转换为json对象的方法解析

例如: JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对象:var str2 = { "name": "cxh", "sex": "man" }; 一.JSON字符串转换为JSON对象 要使用上面的str1,必须使用下面的方法先转化为JSON对象: //由JSON字符串转换为JS

C#对象转JSON字符串和JSON字符串转对象

C#对象转JSON字符串和JSON字符串转对象 /* 创建者:菜刀居士的博客 * 创建日期: 2014年09月03号 * 功能: Json操作 *  */ namespace Net.String.ConsoleApplication {    using System;    using System.Data;     using System.Collections;    using System.ComponentModel;    using System.Collections.G

json字符串与json对象简单介绍

json字符串与json对象简单介绍:本章节介绍一下标题两个称呼所指的内容是什么.在网上或者一些前端群里,经常会看到json字符串或者json对象两个称呼.关于json字符串大家几乎没有什么异议,那就是一个字符串,具有一定的格式,代码如下: var web = '{ "name": "蚂蚁部落", "url": "www.softwhy.com" }'; 下面就该到了json对象这个称呼了,先看一个代码实例: var obj