zoukankan      html  css  js  c++  java
  • json基础入门

      json是什么?

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#Java、JavaScript、PerlPython等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。

      json的语法规则是怎样的?

    JSON 语法是 JavaScript 对象表示语法的子集。
    • 数据在键值对中
    • 数据由逗号分隔
    • 花括号保存对象
    • 方括号保存数组

    不理解?没关系,看图看例子吧!

       json和XML的关系

    语法对比:

       json的解析和生成

    在JavaScript中,有两个方法于此相关:JSON.parse和JSON.stringify。

      json格式规定

     相关代码:

    数组里面可以存放数字、字符、对象、另一个数组等:

       json字符串转化成对象

    解析:是指将符合json语法规则的字符串转换成对象的过程。在JavaScript中的解析方法主要有三种:

    1、使用eval。因为eval()是一个相对危险的函数,字符串中可能含有未知的因素,所以目前很少直接使用eval()来解析json字符串,除非你的浏览器版本十分旧。

    试想如果不加eval()函数中的那对括号,会发生什么?

    2、使用JSON.parse()。现在绝大多数浏览器都支持JSON.parse(),是推荐使用的方式。如果输入了不符合规范的字符串,会报错。JSON.parse()可以有第二参数,是一个函数。此函数有两个参数:name和value,分别代表名称和值。当传入一个JSON字符串后,JSON的每一组名称/值对都要调用此函数。该函数有返回值,返回值将赋值给当前的名称(name)。利用第二个参数,可以在解析JSON字符串的同时对数据进行一些处理。

    例1:

    例2:

    3、使用第三方库,例如jquery等。

       对象转化为字符串

    俗称序列化,指将JavaScript值转化为JSON字符串的过程。JSON.stringify()能够将JavaScript值转换成JSON字符串。JSON.stringify()生成的字符串可以用JSON.parse()再还原成JavaScript值。

    value的用法:

    replace的用法1:

    replace的用法2:

    space用法:

       JSON和XML的转换

    步骤如下:

    1、下载相关文件(jquery、jquery.json2xml.js、jquery.xml2json.js);

    2、XML字符串转换成JSON对象($.xml2json(str));

    3、JSON对象转换成XML字符串($.json2xml(obj));

       Ajax和JSON

     JSON文件被放置在服务器端,客户端请求该文件用得最多的是Ajax,能够实现异步请求。

    1、什么是Ajax?

    AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。AJAX 是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面。

    2、创建和使用Ajax

     创建Ajax对象要考虑浏览器的版本问题,主要分为两大类:IE7+/Chrome/Firefox/..和IE6/IE5

     

     判断请求是否获得响应:

    完整代码:

       json的两种扩展格式

    GeoJSON和TopoJSON是符合语法规则的两种数据格式,用于标识地理信息。

    1、GeoJSON:是用于描述地理空间信息的数据格式。它不是一种的格式,其语法规范是符合JSON格式的,只不过对其名称进行了规范,专门用于表示地理信息。

    例子1:

    例子2:

    发现1:

    发现2:

    2、ToPoJSON:

     

     相关链接:

    json在线编辑器和验证器:http://json.cn/

    geojson在线编辑器和查看器:http://geojson.io/

    geojson和Topojson转化的工具:http://mapshaper.org/

  • 相关阅读:
    学习进度条73
    学习进度条72
    学习进度条71
    学习进度条70
    学习进度条69
    学习进度条68
    学习进度条67
    学习进度条66
    学习进度条65
    elasticsearch
  • 原文地址:https://www.cnblogs.com/fengxiongZz/p/6523614.html
Copyright © 2011-2022 走看看