Web1.0时代

早期网站的登录,如果失败,需要刷新页面才能重新登录;

如果不点击提交按钮,就不知道自己密码输错了;

现在大多数的网站,都是局部刷新,在不刷新整个页面的情况下,实现页面更新;

注册的时候,发现手机号已经注册过了,但是你只是输入了,并没有提交,然后他就提示了;

Web2.0时代最重要的一个因素就是Ajax。

Json

前后端分离,数据交互变得异常重要;

json就是王者!

 <!DOCTYPE html>
 <html>
  <head>
  <meta charset="utf-8" />
  <title></title>
  </head>
  <body>
  <script type="text/javascript">
  //定义一个对象
  var user={
  name:'dlq',
  age:20,
  sex:'男'
  };
  //在控制台输出这个对象
  console.log(user);
  //将js对象转化为json字符串
  var str=JSON.stringify(user);
  console.log(str);
  //将json字符串解析为js对象
  var obj=JSON.parse(str);
  console.log(obj);
  </script>
  </body>
 </html>
 ​

什么是json?

JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。(百度百科)

在js语言中,一切都是对象 。因此,任何js支持的类型都能通过json来表示,例如字符串、数字、对象、数组等。

要求和语法格式:

  • 对象表示为键值对,数据由逗号分隔

  • 花开括保存对象

  • 方括号保存数组

json键值对是用来保存js对象的一种方式,和js对象的写法也大同小异,键/值对组合中的键名写在前面用双引号” ”包裹,是由冒号:分隔,后面是值,例如:

{“name”:“dlq”}

js对象和json的关系可以这么理解:

json是js对象的字符串表示方法,它使用文本表示一个js对象的信息,本质就是一个字符串。

var json=‘{"a":"hello","b":"world"}’;

这是一个json字符串,本质是一个字符串

json和js对象互转

要实现从json字符串转化为js对象,使用JSON.parse()方法(parse-解析):

var obj=JSON.parse('{"a":"hello","b":"world"}');

结果是{a:"hello",b:"world"}

要实现从js对象转化为json字符串,使用JSON.stringify()方法:

var json=JSON.stringify(a:"hello",b:"world");

结果是'{"a":"hello","b":"world"}'

 

day02-json字符串和js对象的更多相关文章

  1. JSON字符串和JS对象之间的转换

    JSON字符串和JS对象之间的转换 1 json字符串转换为js对象 1.1 标准json格式字符串转换为Js对象  JSON字符串 str JSON.parse(str) eval(str) eva ...

  2. JSON字符串和JS对象

    JSON和JS对象 一 JSON是什么 JSON是基于文本的,轻量的,用于数据交换的,一种格式. 可以看到JSON的定义里面有很多的定语,现在就每个限定解释一下: 1. 基于文本 这里的意思是相对于哪 ...

  3. JSON字符串与JS对象格式转换

    JSON通常用于服务器向客户端传送数据,传回来的JSON数据是字符串的形式,所以要转变为JS对象形式才方便我们使用. JSON字符串转变为JS对象:JSON.parse( ); JS对象转变为JSON ...

  4. JSON字符串和js对象转换

    https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON js数据类型: 字符串.数字 ...

  5. 使用js把json字符串转为js对象的方法

    ECMA-262(E3) 中没有将JSON概念写到标准中,还好在 ECMA-262(E5)中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法. 1,eval方式解析,恐怕 ...

  6. js中JSON的解析(将json字符串转化为对象)和序列化(将对象转化为json字符串)(函数的功能一般都挺全的,需要的时候去查看完整函数)

    js中JSON的解析(将json字符串转化为对象)和序列化(将对象转化为json字符串)(函数的功能一般都挺全的,需要的时候去查看完整函数) 一.总结 1.JSON解析:JSON.parse(myJS ...

  7. json 字符串转换成对象,对象转换成json字符串

    json   字符串转换成对象,对象转换成json字符串 前端: 方法一: parseJSON方法:   [注意jquery版本问题] var str = '{"name":&qu ...

  8. Json字符串转换为java对象的各种实现方法【json_lib框架、Gson、org.json】

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://mengzhengbin520.blog.51cto.com/7590564/12 ...

  9. Json对象与Json字符串的转化、JSON字符串与Java对象的转换

    一.Json对象与Json字符串的转化 1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符 ...

  10. Json对象与Json字符串的转化、JSON字符串与Java对象的转换(转)

    一.Json对象与Json字符串的转化 1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符 ...

随机推荐

  1. agnostic在计算机领域的常用翻译 —— location-agnostic deployment option

    关于agnostic的翻译: 例子: NVIDIA OSMO scales workloads across distributed environments. For robotics worklo ...

  2. 如何配置docker pull代理

    参考: https://blog.csdn.net/vic_qxz/article/details/130061661 经过验证确实有效.

  3. 【转载】 传统PID算法解决不了的情况,应该怎么办?

    原文地址: http://www.51hei.com/bbs/dpj-152844-1.html --------------------------------------------------- ...

  4. Ubuntu18.04系统下网络文件系统nfs的安装及简单配置

    硬件环境: 两台Ubuntu18.04服务器使用局域网连接,IP分别为192.168.11.66 和 192.168.11.206. ================================= ...

  5. 国产计算框架mindspore在gpu环境下1.3.0版本的分布式计算组件安装 ——(openmpi 和 nccl 的安装,配置,示例代码的运行)

    前文已经给出1.3.0gpu版本的编译及安装,本文在此基础上进行分布式组件的安装,前文信息参看: 国产计算框架mindspore在gpu环境下编译分支r1.3,使用suod权限成功编译并安装,成功运行 ...

  6. VcXsrv: 一个好用的Windows X11 Server

    windows10没有系统自带的X11服务器,使用了几款X11的windows下X11服务器软件后发现了一个好用的软件--VcXsrv. 下载地址: https://sourceforge.net/p ...

  7. 【转载】 xavier,kaiming初始化中的fan_in,fan_out在卷积神经网络是什么意思

    原文地址: https://www.cnblogs.com/liuzhan709/p/10092679.html =========================================== ...

  8. mybatis 中 实体类字段为 month SQL 会报错的问题

    因为 month 是 mysql 的关键字 ,所以 你的实体类字段改成 months months months months months months就行了

  9. Floyd判联通(传递闭包) & poj1049 sorting it all out

    Floyd判联通(传递闭包) Floyd传递闭包顾名思义就是把判最短路的代码替换成了判是否连通的代码,它可以用来判断图中两点是否连通.板子大概是这个样的: for(int k=1; k<=n; ...

  10. loj6669 Nauuo and Binary Tree 题解

    https://loj.ac/p/6669 赛时做法 先 \(n-1\) 次问出深度 逐层考虑.slv(vector<int> a,vector<int> b) 表示在点集 \ ...