学习JSON--将JSON数据格式转换为JS对象

此次学习JSON---解决了项目实战中的疑惑


--JSON:JavaScript Object Notation  JS对象表示法,

           *JS中的对象只有JS自己认识,其他的语言都不认识

           *JSON就是一个特殊格式的字符串,这个字符串可以被任意语言识别,并且可以转换为任意语言中的对象,因此我们可以把JS对象传到其他语言中,也可以将其他语言的对象发到JS中。

           *JSON在开发中主要用于数据的交互

           *JSON和JS对象的格式一样,只不过JSON字符串中的属性名必须加双引号,其他的和JS语法一致。

var obj = {name:"孙悟空",age:18,gender:"女"};//JS写法

var obj1 = '{"name":"孙悟空","age":18,"gender":"女"}'; //JSON格式

--JSON分类:

        1、对象{}

var obj1 = '{"name":"孙悟空","age":18,"gender":"女"}';

         2、数组[]

var arr = '[123,"hello","你好",true]';

--JSON中允许的值:

        1、字符串

         2、数值

         3、布尔值

          4、null

          5、对象

var arr1 = '[{"name":"孙悟空","age":18,"gender":"女"},{"name":"孙悟空","age":18,"gender":"女"}]';

          6、数组

var obj2 = '{"name":[1,3,4]}';


--假如服务器端向JS发送JSON数据,我们则需要将JSON 字符串转换为JS对象。

在JS中,为我们提供了一个工具类,就叫JSON,这个工具可以将一个JSON转化为JS对象,也可以将JS对象转换为JSON。

/**

* JSON.parse()可以将JSON字符串转化为js对象并返回

* -它需要一个JSON字符串作为参数

*/

var o = JSON.parse(obj1);

//转换成功后可以通过对象.属性名来获取属性值

console.log(o.name);


--JS对象转化为JSON字符串

在JS中,使用JSON.stringify(),它需要一个js对象作为参数,并返回一个JSON字符串

var obj = {name:"孙悟空",age:18,gender:"女"};

var str = JSON.stringify(obj);

console.log(str.name); //此时会显示undefined

你可能感兴趣的:(学习JSON--将JSON数据格式转换为JS对象)