关于JSON

JSON:  指JavaScript对象表示法(JavaScript Object Notation),使用Javascript语法来描述对象。

1、它是轻量级的文本数据交换格式,相对于XML更简洁(没有后半标签)、自然就会更小更快。

2、它独立于语言,即JSON解析器和JSON库支持许多不同的编程语言,如C、C++、Java、C#、PHP、Python等等。

3、它具有自我描述性,更易了解。


JSON语法:

1、数据在名称/值对中

2、数据由逗号分割

3、花括号保存对象

4、方括号保存数组

例:

单对象A: {"name":"Wilsom","age":24,"school":"CUMT","hobby":["web","java","basketball"]};

多对象B:{"student":[ {"name":"zhangsan", "age":12}, {"name":"lisi", "age":22} ,{"name":"wangwu" , "age":33} ]};


JSON的值:

1、数字(整数或浮点型)

2、字符串(在双引号中)

3、逻辑值(true或false)

4、数组(在方括号中)

5、对象(在花括号内)

6、null


JSON使用:

用eval()处理JSON字符串

**注意,必须把文本包围在括号中才能避免语法错误**

对于上面的对象A和B:

<script>
function A(){
var objA='{"name":"Wilsom","age":24,"school":"CUMT","hobby":["web","java","basketball"]}';
var objB='{"student":[ {"name":"zhangsan", "age":12}, {"name":"lisi", "age":22} ,{"name":"wangwu" , "age":33} ]}';

var jsonA = eval("("+objA+")");
alert(jsonA.name);

var jsonB = eval("("+objB+")");
alert(jsonB.student[0].name);

}

</script>


参考:json官网  http://www.json.org/

            W3school  http://www.w3school.com.cn/json/





### JSON 函数的使用方法和操作示例 JSONJavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于数据库、编程语言以及数据存储与传输。以下是几种常见编程环境或数据库中与 JSON 相关的函数及其使用方法。 #### PostgreSQL 中的 `row_to_json` 函数 在 PostgreSQL 中,`row_to_json` 是一个将记录转换为 JSON 对象的函数。它可以接受一个可选参数 `pretty_bool`,用于控制输出格式是否美化[^1]。 - **语法**: ```sql row_to_json(record [, pretty_bool]) ``` - **示例**: 将表 `Students` 中的一条记录转换为 JSON 格式: ```sql SELECT row_to_json(e) FROM (SELECT * FROM "Students" WHERE "Id"=2) e; ``` 如果需要美化输出,可以设置第二个参数为 `true`: ```sql SELECT row_to_json(e, true) FROM (SELECT * FROM "Students" WHERE "Id"=2) e; ``` #### MySQL 中的 JSON 函数 MySQL 提供了丰富的 JSON 函数来处理 JSON 数据类型。例如,插入、查询、修改 JSON 文档等操作都可以通过这些函数实现[^2]。 - **常用函数**: - `JSON_OBJECT`: 创建一个新的 JSON 对象。 ```sql SELECT JSON_OBJECT('key1', 'value1', 'key2', 'value2'); ``` - `JSON_SET`: 向现有 JSON 文档中添加或更新键值对。 ```sql SELECT JSON_SET('{"key1": "value1"}', '$.key2', 'value2'); ``` - `JSON_EXTRACT`: 从 JSON 文档中提取指定路径的值。 ```sql SELECT JSON_EXTRACT('{"key1": "value1", "key2": "value2"}', '$.key2'); ``` #### Python 中的 `json.dump` 和 `json.dumps` 函数 Python 的 `json` 模块提供了多种方法来处理 JSON 数据。其中,`json.dump` 用于将 Python 对象写入文件,而 `json.dumps` 则返回 JSON 格式的字符串[^3]。 - **语法**: ```python json.dump(obj, fp, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw) ``` - **示例**: 将字典对象写入 JSON 文件: ```python import json person_dict = {"name": "Alice", "age": 30} with open("person.json", "w") as json_file: json.dump(person_dict, json_file, indent=4) ``` 使用 `json.dumps` 将字典转换为 JSON 字符串: ```python json_string = json.dumps(person_dict, indent=4) print(json_string) ``` #### 错误处理与注意事项 在使用 JSON 函数时,需要注意以下几点: - 如果提供的 JSON 文档无效,可能会导致错误发生[^2]。 - 在路径表达式中,如果包含不支持的通配符(如 `*` 或 `**`),也可能引发异常。 ### 示例代码总结 以下是一个综合示例,展示如何在不同环境中使用 JSON 函数: ```sql -- PostgreSQL 示例 SELECT row_to_json(e, true) FROM (SELECT * FROM "Students" WHERE "Id"=2) e; -- MySQL 示例 SELECT JSON_SET('{"key1": "value1"}', '$.key2', 'value2'); -- Python 示例 import json person_dict = {"name": "Alice", "age": 30} with open("person.json", "w") as json_file: json.dump(person_dict, json_file, indent=4) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值