JSON字符串与JSON对象的区别

1. 区别

a.JSON对象是直接可以使用JQuery操作的格式

b.JSON字符串仅仅只是一个字符串,一个整体,不截取的话没办法取出其中存储的数据,不能直接使用

1. 当我们alert  JSON对象  看到的都是Objectd 时候, 想要知道object 是什么时, 先转换为JSON字符串再    alert,通过 JSON.Stringify(json对象)

2. 当我们需要知道 JSON字符串中的某个属性 ,需要先转换为 JSON对象  通过alert(对象.属性)的方式来看,

如果直接 alert, 显示的就是undefined, 要先通过JSON.parse(字符串)转为对象

---- 主要是  区别 ,  相互转换的方法 , 使用注意事项---(记住常用的方法)

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<script type="text/javascript">
		//这个是json对象,不带引号
		var str1 = {
			"name" : "hello",
			"sex" : "man"
		};

		//这是json字符串
		var str2 = '{"name":"java","sex":"man"}';
		//alert(str1);
		//alert(str2);
		//alert(str1.name);
		//alert(str2.name); //可以看到这个是 undefined的,说明只能由JSON对象获取属性

		//1. 将JSON字符串转为JSON对象, JSON.parse(字符串)
		var obj = JSON.parse(str2); //这种方法只支持标准格式,也就是类似str2的格式
		alert(obj.name);
		//2. 使用 eval('('+str')')
		var s1 = '{name:111}';
		var o1 = eval('(' + s1 + ')');
		alert(o1.name);
		
		//(2) ---将JSON对象转为 JSON字符串
		// 1.使用全局方法JSON.stringify() 或  
		//   toJSONString()(好像要引入json.js https://github.com/douglascrockford/JSON-js)
		var strToObj=JSON.stringify(str1);
		alert(strToObj);
	</script>
</body>
</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值