繁体   English   中英

将 Bson 转换为 Json 对象

[英]Convert Bson to Json object

Crome 开发者工具显示这个

console.log('DATA*** ', data[0]._id);

错误: DATA*** Object {_bsontype: "ObjectID", id: "YIä↵P¨H0"}

如何将其转换为普通的 JSON 对象?

你要找的是JSON.stringify()

JSON.stringify(objectToSerialize)

您需要使用 JSON.stringify() 然后使用 JSON.parse() 将 bson 转换为有效的 json。

const dataString = JSON.stringify(data[0]);
const parsed = JSON.parse(dataString);

console.log(parsed._id);

其他 bson 类型可能会以规范格式为您提供相关的表示形式 例如,如果您在 mongodb 中使用十进制bsonType,它将显示如下:

...(continuing from code block above)

console.log(parsed.aDecimalNumber); // { $numberDecimal: 1.00 }

您想在 id 字段上调用 ​​.tostring() 函数。

objectId 被保存为以十六进制存储的特殊类型以减小大小。 您需要使用 toString 函数将其转换为 24 位 ascii 字符字符串

https://github.com/mongodb/js-bson/blob/1.0-branch/lib/bson/objectid.js#L171-L179

console.log('DATA*** ', data[0]._id.toString());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM