数据与 JSON
Mongo数据格式化
格式化 MongoDB 文档及筛选条件片段,保留 ObjectId、ISODate、NumberLong 等构造器写法,支持压缩、语法校验、复制和下载,不连接或执行数据库查询。
内容核对:
工具介绍
用于整理 MongoDB 筛选条件、文档或结果片段,保留 shell 风格的 BSON 构造器。格式化增加缩进,压缩移除多余空白,校验检查当前片段是否符合支持的语法。
页面处理单个值、对象或数组,不连接数据库,也不执行 db.collection.find() 等脚本。
适用场景
- 在数据库客户端执行前,检查筛选条件文档的结构。
- 整理带有 BSON 类型写法的结果片段,保留类型标识。
使用步骤
- 粘贴单个文档、数组或支持的值,或使用打开工具时显示的样例。
- 选择格式化、压缩或校验;出现解析错误时先修正输入。
- 复制结果或下载文本,再到自己的数据库客户端执行查询。
格式化 BSON 构造器片段
输入
{_id:ObjectId("507f1f77bcf86cd799439011"),createdAt:ISODate("2026-01-01T00:00:00Z"),total:NumberLong("42")}输出
{
_id: ObjectId("507f1f77bcf86cd799439011"),
createdAt: ISODate("2026-01-01T00:00:00Z"),
total: NumberLong("42")
}格式化会保留 ObjectId、ISODate 和 NumberLong。输出不是严格 JSON,也不是规范化 Extended JSON。
能力范围与限制
- 支持 ObjectId、ISODate、NumberLong、BinData 等常见构造器,不是完整的 mongosh 解释器。
- 校验检查支持的语法,不验证字段类型、查询逻辑或 BSON 值范围;数据库操作仍需在 MongoDB 工具中验证。
数据处理说明
格式化在浏览器内完成,不连接 MongoDB,也不向数据库发送片段。开启统计后只记录操作类型,不记录输入或输出内容。
常见问题
可以格式化 MongoDB 查询吗?
可以处理查询的筛选条件文档,例如 {status: "active"}。完整查询脚本和数据库执行不在此工具的能力范围内。
为什么 JSON.parse 不能解析 ObjectId(...)?
构造器调用不是 JSON 值。MongoDB 的 Extended JSON 用 JSON 对象表示 BSON 类型;本工具保留 shell 写法,并不将其转换为 Extended JSON。