JSON数据格式介绍

                                                      JSON用法

对象以"{"(左括号)开始,"}"(右括号)结束。每个"名称"后跟一个":"(冒号);"'名称/值’'对"之间运用 “,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。

例如:

{
    "站长": "soso,8446666",
    "域名": "https://www.hah.com",
    "开发语言": "广泛的语言——Java ^_^",
    "编码": "UTF-8"
}

数组是值(value)的有序集合。一个数组以”[”(左中括号)开始,"]"(右中括号)结束。值之间运用 ","(逗号)分隔。

例如:

{
    "技术使用": [
        "SpringMVC",
        "Mybatis ",
        "Freemarker",
        "Shiro"
    ],
    "数据存储": [
        "Redis",
        "RDS",
        "云存储"
    ]
}

数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。

JSON字符串:

var data='{"name":"sojson","url":"www.sojson.com"}';//外面是用单引号“'”引用。

var data="{\"name\":\"sojson\",\"url\":\"www.sojson.com\"}";//外面用双引号就要用反斜杠  ‘\’。

JSON对象:

var data={"name":"sojson","url":"www.sojson.com"};

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

个人推荐最好不要用eval(),因为如果可以运算的字符串,结果就会和应该的到的不一致,比如字符串里有含有"1+2",本来就是个字符串,但是结果是以"3"的方式输出的。

 

可以运用 toJSONString()或者全局的JSON.stringify()函数将JSON对象转化为JSON字符串

代码如下:

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

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

总结一下:

  1. 在数据传输流程中,json是以文本,即字符串的形式传递的,和其他的传输类型没有任何差别。都是以字符串文本传输。
  2. Json.stringify()将JSON对象转为JSON字符串(也称之为序列化);
  3. Json.parse()将JSON字符串转为JSON对象(也称之为反序列化);

你可能感兴趣的:(JS)