什么是json,json转换对象和字符串,实例讲解

举报
前端老实人 发表于 2021/09/29 17:34:56 2021/09/29
【摘要】 什么是 JSON?json是ES5.1出来的JSON 英文全称 JavaScript Object NotationJSON 是一种轻量级的数据交换格式。JSON是独立的语言JSON 易于理解。JSON 语法规则数据为 键/值 对。数据由逗号分隔。大括号保存对象方括号保存数组JSON 数据 - 一个名称对应一个值JSON 数据格式为 键/值 对,就像 JavaScript 对象属性。键/值对...

什么是 JSON?

  • json是ES5.1出来的
  • JSON 英文全称 JavaScript Object Notation
  • JSON 是一种轻量级的数据交换格式。
  • JSON是独立的语言
  • JSON 易于理解。

JSON 语法规则

  • 数据为 键/值 对。
  • 数据由逗号分隔。
  • 大括号保存对象
  • 方括号保存数组

JSON 数据 - 一个名称对应一个值

JSON 数据格式为 键/值 对,就像 JavaScript 对象属性。

键/值对包括字段名称(在双引号中),后面一个冒号,然后是值:

方法:

JSON.stringify() 转为字符串

JSON.parse() 解析json

json的标准写法

1.只能用双引号

2.所有的名字都必须用引号包起来

实例:

<body>
  <div id="result"></div>
  <script>
    const result =document.getElementById('result')
    // 绑定键盘按下事件
    window.onkeydown = function(){
      // 发送请求
      const xhr = new XMLHttpRequest();
      // 设置响应体数据的类型,设置这个可以自动转化
      xhr.responseType = 'json';
      // 初始化
      xhr.open('GET','http://127.0.0.1:8000/json-server'); 
      // 发送
      xhr.send();
      // 事件绑定
      xhr.onreadystatechange = function(){
        if(xhr.readyState === 4){
          if(xhr.status>=200 && xhr.status < 300){
            //
            // console.log(xhr.response);
            // result.innerHTML = xhr.response;
            // 手动对数据转化
            // 将字符串转换为对象,JSON.parse()ie8及以下不支持
                // 但是可以用json2.js这个框架来兼容,百度查
            // let data = JSON.parse(xhr.response);
            // console.log(data);
            // result.innerHTML = data.name
            
            // 自动转换
            console.log(xhr.response);
            result.innerHTML = xhr.response.name 
          }
        }
      }
    }
  </script>
</body>
 
 
 
服务端
// JSON响应
app.all('/json-server', (request, response) => {
  // 设置响应头    设置允许跨域
  response.setHeader('Access-Control-Allow-Origin', '*');
  // 响应头
  response.setHeader('Access-Control-Allow-Headers', '*');
  //响应一个数据
  const data = {
    name: 'atguigu'
  };
  // 进行字符串的转换
  let str = JSON.stringify(data);
  //设置响应体
  response.send(str)
});

最后

如果对您有帮助,希望能给个👍评论收藏三连!

想跟博主交朋友的可以关注下🌹,有问题评论留言。

博主为人老实,无偿解答问题哦❤

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。