02.JSON.Stringify() 和JSON.parse()

一.什么是JSON?

 概念:JSON就是JavaScript对象和数组的字符串表示法,JSON的本质就是字符串

 作用:JSON是一种轻量级的文本数据交互格式

二.JSON的两种结构

1.对象结构:对象结构在JSON中表示{}括起来的内容,数据结构{key:value,key:value,...}的键值对

结构。其中key必须使用因为的双引号包裹的字符串,value的数据类型可以是数字字符串布尔值null数组对象6种类型。

2.数组结构:数组结构在JSON中表示[]起来的内容,数据结构为["java","javascrpit"],数据中的数据类型可以是数字字符串布尔值null数组对象6种类型

三.JSON语法的注意事项

1.属性名必须使用双引号包裹

2.字符串类型的值必须使用双引号包裹

3.JSON中不允许使用单引号表示字符串

4.JSON中不能写注释

5.JSON的最外层必须是对象或数组格式

6.不能使用underfeind 或函数作为JSON的值

作用:在计算机与网络之间存储和传输数据

四.转化的方法

1.JSON.parse()方法将JSON字符串转换为js对象。

 var str = '{"name":"张三","age":20}'
    var obj = JSON.parse(str);
    console.log(obj);

转换后的js对象:

 

2. JSON.stringify()方法将JS对象转换为JSON字符串。

  var obj = {
      zs: '张三',
      age: 20
    }
    var str = JSON.stringify(obj);
    console.log(str);

五.应用的场景

通过AJax发送请求回来的数据需要通过JSON.parse()转化为js对象

  <button>发送get请求</button>
  <script>
    var btn = document.querySelector('button')
    btn.onclick = function () {
      // alert('1z')
      var xhr = new XMLHttpRequest()
      xhr.open('Get', 'http://www.liulongbin.top:3006/api/getbooks')
      xhr.send()
      xhr.onreadystatechange = function () {
        if (xhr.readyState === 4 && xhr.status === 200) {
          console.log(xhr.responseText)
        }
      }

    }

 得到的是:一个JSON字符串

 通过JSON.parse(xhr.responseText) 转化过后的数据是一个js对象

双击666

おすすめ

転載: blog.csdn.net/qq_59076775/article/details/121004046