JSON数据和javaScript的初步认识和转化

今天用到了JSON对象,很不理解它的转换方式,差了一些资料,mark一下 便于自己以后理解

JSON对象基本格式是

var json_object = {
	"name":"yang",
	"age":22,
	"sex":"male"
}

这里要注意JSON对象的属性值一定要有双引号,对于javaScript原生的对象通常是:
var json_object = {

	name:"yang",
	age:22,
	sex:"male"
}
在javaScript高级程序设计中说到其实原生对象 是可以写成:

var json_object = {
	"name":"yang",
	"age":22,
	"sex":"male"
}

在JSON对象中定义了两个方法一个是把原生的javaScript对象转化成json字符串的stringify方法和把JSON串转化成javaScript对象的parse方法,同时对于JSON串转化成javaScripr对象可以用eval()方法,eval函数会评估一个给定的含有JavaScript代码的字符串,并且试图去执行包含在字符串里的表达式或者一系列的合法的JavaScript语句。eval函数将把最后一个表达式或者语句所包含的值或引用作为返回值。在eval中评估JSON串的时候要加上()这样保证eval()不会吧函数中的内容当做一个可执行的javaScript语句进行执行 如:var m = eval("("+json_string+")"),同时如果"JSON串"是一个类似于类字面变量的串时(属性名无双引号),那么eval()评估时会把它当做一个javaScript语句进行执行而不是解析这个JSON,这也就是为什么JSON串的属性名要有双引号。这就是初步对于JSON数据和javaScript对象的粗浅理解。下面附上我自己的“测试代码”:

<html>
<head>
<title>JSON TEST</title>
<script type = "text/javascript"><!--JSON对象中要求把对象的属性加上引号-->
var json_object = {<!--对于javaScript的对象的属性可以加上引号也可以没有引号-->
	"name":"yang",
	"age":22,
	"sex":"male"
}
var json_string = JSON.stringify(json_object)<!--用于把javaScript对象转化成JSON串-->
var m = eval("("+json_string+")");
alert(m.name);
alert(JSON.parse(json_string).name);<!--用于把json串转化成javaScript的原生对象-->
</script>
</head>
<body>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值