在前后台交互中,JSON(JavaScript Object Notation)因其轻量级和易于人阅读的特点,被广泛用作数据交换格式。下面我将分别介绍如何在不同编程语言中解析和生成JSON数据。
### 解析JSON
#### JavaScript
在JavaScript中,可以使用`JSON.parse()`方法来解析JSON字符串为JavaScript对象。
let jsonString = '{"name":"John", "age":30, "city":"New York"}';
let obj = JSON.parse(jsonString);
console.log(obj.name); // 输出: John
#### Python
在Python中,可以使用`json`模块中的`loads()`函数来解析JSON字符串。
import json
json_str = '{"name": "John", "age": 30, "city": "New York"}'
data = json.loads(json_str)
print(data["name"]) # 输出: John
### 生成JSON
#### JavaScript
在JavaScript中,可以使用`JSON.stringify()`方法将JavaScript对象转换为JSON字符串。
let obj = { name: "John", age: 30, city: "New York" };
let jsonString = JSON.stringify(obj);
console.log(jsonString); // 输出: {"name":"John","age":30,"city":"New York"}
#### Python
在Python中,可以使用`json`模块中的`dumps()`函数将Python对象转换为JSON字符串。
import json
data = {
'name': 'John',
'age': 30,
'city': 'New York'
}
json_str = json.dumps(data)
print(json_str) # 输出: {"name": "John", "age": 30, "city": "New York"}
注意:生成的JSON字符串中的键(key)默认会被转换为字符串类型,且会按照Unicode进行编码。此外,在JavaScript中,对象属性的顺序可能不保证与源代码中的顺序一致,因为JavaScript对象是无序的集合;但在Python中,`json.dumps()`通常会保留字典的插入顺序(在Python 3.7及以上版本中,字典是有序的)。