JS操作JSON方法总结(推荐)
什么是JSON
JSON全称是JavaScript Object Notation,即JavaScript对象表示法。在Web应用程序中,使用JSON格式来交换数据是一种常见方式。JSON是一种轻量级的数据交换格式,容易被阅读和编写,并且易于机器解析和生成。JSON是一种文本格式,可以通过JavaScript或其他语言解析。
JSON的语法
JSON有两种数据结构:
- 键值对
- 值列表
键值对
键值对是一种类型的值,它由一个键和一个值组成,用“:”分隔。键/值对用“,”分隔,对象用花括号表示。
例如,下面是一个JSON对象:
{
"name": "John",
"age": 30,
"city": "New York"
}
值列表
值列表是一个序列,其中每个值由“,”分隔。值列表用方括号表示。
例如,下面是一个JSON数组:
[
{
"name": "John",
"age": 30,
"city": "New York"
},
{
"name": "Jane",
"age": 25,
"city": "San Francisco"
},
{
"name": "Bob",
"age": 40,
"city": "London"
}
]
JS操作JSON
JSON在JavaScript中以字符串的形式表示,因此我们需要将JSON字符串转化为JavaScript对象,然后才能对其进行操作。
JSON.parse()
JSON.parse()方法将JSON字符串转换为JavaScript对象。例如:
let jsonStr = '{"name": "John", "age": 30, "city": "New York"}';
let jsonObj = JSON.parse(jsonStr);
console.log(jsonObj.name); // 输出John
在上面的代码中,我们将jsonStr转换为一个JavaScript对象,并通过属性访问器获取其name属性的值。
JSON.stringify()
JSON.stringify()方法将JavaScript对象转换为JSON字符串。例如:
let jsonObj = {name: 'John', age: 30, city: 'New York'};
let jsonStr = JSON.stringify(jsonObj);
console.log(jsonStr); // 输出{"name":"John","age":30,"city":"New York"}
在上面的代码中,我们将jsonObj转换为一个JSON字符串。
示例
示例1:将JSON字符串转为JavaScript对象并进行操作
例如,我们有一个JSON对象,表示一个人的信息:
let personJson = '{"name": "John", "age": 30, "address": {"city": "New York", "zip": "10001"}}';
我们需要将其转换为JavaScript对象,并获取其address子对象的city属性值。代码如下:
let personObj = JSON.parse(personJson);
console.log(personObj.address.city); // 输出New York
示例2:将JavaScript对象转为JSON字符串并发送到服务器
例如,我们有一个JavaScript对象,表示一个人的信息:
let personObj = {name: 'John', age: 30, address: {city: 'New York', zip: '10001'}};
我们需要将其转换为一个JSON字符串,并使用XMLHttpRequest对象将其发送到服务器。代码如下:
let personJson = JSON.stringify(personObj);
let xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
console.log(this.responseText);
}
};
xhttp.open("POST", "/example?data=" + personJson, true);
xhttp.send();
上面的代码将personObj转换为一个JSON字符串,并使用XMLHttpRequest对象将其发送到服务器。注意,我们在URL参数中传递了JSON字符串,在服务器端需要将其解析为JavaScript对象,例如:
let personJson = request.getParameter("data");
let personObj = JSON.parse(personJson);
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS操作JSON方法总结(推荐) - Python技术站