zoukankan      html  css  js  c++  java
  • JSON学习笔记

    JSON 是一种数据格式,用来表示 JS 中的数据结构(不仅能在 JS 中使用,在其他环境中也可以),通常用于传输数据,例如从服务器发送数据到客户端上使用。其数据结构与 JS 相似,包括 number, string, boolean, array, object。虽然一般看起来像一个 JS 对象,但其他数据类型也存在。

    JSON 是以字符串的形式存在的,文件的后缀名是 .json,返回的 MIME type 始终是 application/json。

    JS 中有一个内置的 JSON 对象,它拥有两个方法,JSON.stringify() 用于把 JS 数据转化成 JSON 数据,JSON.parse() 用于把 JSON 数据转化成 JS 数据。除此之外,这个 JSON 对象没有其他任何作用,不能被调用也不能被当作构造函数来使用。

    需要注意的几点:

    • JSON 中只包括属性,没有方法;
    • JSON 中的属性名要用 "" (双引号)括起来;
    • JSON 中 '' (单引号)是不合法的;
    • 错置的 : (引号)或 ,(逗号) 可能会使 JSON 不合法;

    e.g. 怎用获取并使用 JSON 数据?

    // 存储URL
    var requestURL = "xxx.json";
    // 实例化一个网络请求
    var request = new XMLHttpRequest();
    // 指定请求方法和URL
    request.open("GET", requestURL);
    // 让 XMLHttpRequest 知道要返回的是 json 文件,并把 JSON 数据转成 JS 对象
    request.responseType = "json";
    // 发送请求
    request.send();
    // 处理数据
    request.onload = function() {
        // 把返回的已经转为 JS 对象的 JSON 数据赋值给 myObj
        var myObj = request.response;
        // 对得到的对象进行操作
        doSomething(myObj);
    };

    在上面的代码中,request.responseType = "json"; 让 XHR 请求直接把返回的 JSON 转成了 JS 对象,但有时我们可能得到的不是一个 .json 文件,而是一个 JSON 字符串,这时我们需要使用 JSON.parse() 手动把 JSON 字符串转成 JS 对象。

    // 得到的是一个 JSON 字符串
    request.responseType = "text";
    // 发送请求
    request.send();
    // 处理数据
    request.onload = function() {
        // 得到 JSON 字符串
        var myObjText = request.response;
        // 把 JSON 字符串转为 JS 对象
        var myObj = JSON.parse(myObjText);
        // 对 JS 对象进行操作
        doSomething(myObj);
    };
  • 相关阅读:
    Ajax基础:3.Json
    Head First Design Patterns State Pattern
    Head First Design Patterns Template Method Pattern
    Articles For CSS Related
    Head First Design Patterns Decorator Pattern
    代码审查工具
    How To Be More Active In A Group
    Head First Design Patterns Factory Method Pattern
    Head First Design Patterns Composite Pattern
    Tech Articles
  • 原文地址:https://www.cnblogs.com/sukiY/p/9221443.html
Copyright © 2011-2022 走看看