📜  JavaScript和JSON

📅  最后修改于: 2020-09-27 07:28:57             🧑  作者: Mango

在本教程中,您将通过示例了解JSON以及如何将JavaScript与JSON一起使用。

JSON代表Javascript Object Notation。 JSON是一种基于文本的数据格式,用于存储和传输数据。例如,

// JSON syntax
{
    "name": "John",
    "age": 22,
    "gender": "male",

}

在JSON,数据是在由逗号分隔的键/值,

JSON源自JavaScript。因此,JSON语法类似于JavaScript对象字面量语法。但是,JSON格式也可以被其他编程语言访问和创建。

注意 :JavaScript对象和JSON不同。您将在本教程的后面部分了解它们的区别。


JSON数据

JSON数据由类似于JavaScript对象属性的键/值对组成。键和值用双引号隔开,用冒号隔开: 。例如,

// JSON data
"name": "John"

注意 :JSON数据要求密钥使用双引号。


JSON对象

JSON对象写在花括号{ } 。 JSON对象可以包含多个键/值对。例如,

// JSON object
{ "name": "John", "age": 22 }

JSON数组

JSON数组写在方括号[ ] 。例如,

// JSON array
[ "apple", "mango", "banana"]

// JSON array containing objects
[
    { "name": "John", "age": 22 },
    { "name": "Peter", "age": 20 }.
    { "name": "Mark", "age": 23 }
]

注意 :JSON数据可以包含对象和数组。但是,与JavaScript对象不同,JSON数据不能包含函数作为值。


访问JSON数据

您可以使用点表示法访问JSON数据。例如,

// JSON object
let data = {
    "name": "John",
    "age": 22,
    "hobby": {
    "reading" : true,
    "gaming" : false,
    "sport" : "football"
    },
    "class" : ["JavaScript", "HTML", "CSS"]
}

// accessing JSON object
console.log(data.name); // John
console.log(data.hobby); // { gaming: false, reading: true, sport: "football"}

console.log(data.hobby.sport); // football
console.log(data.class[1]); // HTML

我们使用.用于访问JSON数据的符号。它的语法是: variableName.key

您还可以使用方括号语法[]访问JSON数据。例如,

// JSON object
let data = {
    "name": "John",
    "age": 22
}

// accessing JSON object
console.log(data["name"]); // John

JavaScript对象VS JSON

尽管JSON的语法与JavaScript对象相似,但JSON与JavaScript对象不同。

JSON JavaScript Object
The key in key/value pair should be in double quotes. The key in key/value pair can be without double quotes.
JSON cannot contain functions. JavaScript objects can contain functions.
JSON can be created and used by other programming languages. JavaScript objects can only be used in JavaScript.

将JSON转换为JavaScript对象

您可以使用内置的JSON.parse() 函数将JSON数据转换为JavaScript对象。例如,

// json object
let jsonData = '{ "name": "John", "age": 22 }';

// converting to JavaScript object
let obj = JSON.parse(jsonData);

// accessing the data
console.log(obj.name); // John

将JavaScript对象转换为JSON

您还可以使用JavaScript内置的JSON.stringify() 函数将JavaScript对象转换为JSON格式。例如,

// JavaScript object
let jsonData = { "name": "John", "age": 22 };

// converting to JSON
let obj = JSON.stringify(jsonData);

// accessing the data
console.log(obj); // "{"name":"John","age":22}"

JSON的使用

JSON是从服务器到客户端(反之亦然)传输数据(数据交换)的最常用格式。 JSON数据非常易于解析和使用。由于JSON数据仅包含文本,因此访问和处理JSON的速度很快。

JSON与语言无关。您也可以使用其他编程语言来创建和使用JSON。