JavaScript JSON 简介

  • 什么是JSON

    • JSON代表JavaScript Object Notation
    • JSON是一种轻量级数据交换格式
    • JSON是“自我描述”且易于理解
    • JSON与语言无关*
    * JSON使用JavaScript语法,但JSON格式仅为文本。可以通过任何编程语言读取文本并将其用作数据格式。
  • 为什么要使用JSON

    由于JSON格式仅为文本格式,因此可以轻松地将其发送到服务器或从服务器发送,并且可以通过任何编程语言用作数据格式。JavaScript有一个内置函数,用于将以JSON格式编写的字符串转换为本机JavaScript对象:JSON.parse()因此,如果从JSON格式的服务器接收数据,则可以像使用任何其他JavaScript对象一样使用它。
  • 交换数据

    在浏览器和服务器之间交换数据时,数据只能是文本。JSON是文本,我们可以将任何JavaScript对象转换为JSON,并将JSON发送到服务器。我们还可以将从服务器接收的任何JSON转换为JavaScript对象。这样我们就可以将数据作为JavaScript对象使用,而无需复杂的解析和翻译。
  • 发送数据

    如果您将数据存储在JavaScript对象中,则可以将对象转换为JSON,并将其发送到服务器:
    var myObj = {name: "John", age: 31, city: "New York"};
    var myJSON = JSON.stringify(myObj);
    window.location = "demo_json.php?x=" + myJSON;
    尝试一下
    您将在本教程后面了解有关JSON.stringify()函数的更多信息。
  • 接收数据

    如果您以JSON格式接收数据,则可以将其转换为JavaScript对象:
    var myJSON = '{"name":"John", "age":31, "city":"New York"}';
    var myObj = JSON.parse(myJSON);
    document.getElementById("demo").innerHTML = myObj.name;
    尝试一下
    您将在本教程后面了解有关JSON.parse()函数的更多信息。
  • 存储数据

    存储数据时,数据必须是特定格式,无论您选择存储数据, 文本始终是合法格式之一。JSON可以将JavaScript对象存储为文本。
    // 存储数据:
    myObj = {name: "John", age: 31, city: "New York"};
    myJSON = JSON.stringify(myObj);
    localStorage.setItem("testJSON", myJSON);
    
    // 检索数据:
    text = localStorage.getItem("testJSON");
    obj = JSON.parse(text);
    document.getElementById("demo").innerHTML = obj.name;
    尝试一下