javascript – 为什么Meteor直接使用EJSON而不是BSON?

前端之家收集整理的这篇文章主要介绍了javascript – 为什么Meteor直接使用EJSON而不是BSON?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
据我了解,Node.js支持BSON(不确定是本机还是使用npm包).然而Meteor发明了一种新的味道E JSON(增强型 JSON),但是我没有看到它带来了什么优势以及它如何比直接使用BSON更好.

有没有人知道EJSON优于BSON的优点是什么,或者当已经有JSON和BSON可用时,为什么需要EJSON?

解决方法

好吧,不是BSON已经消失了,它仍然存在. Meteor MongoDB驱动程序部分建立在 native node driver for MongoDB之上,当然使用BSON实际与MongoDB通信,没有其他办法,因为这是MongoDB所说的语言,可以这么说.

AFAIK,EJSON的要点是在转换为只理解JavaScript的客户端时,保持BSON固有的“类型保真度”,因为它是二进制定义,因此也就是JSON.主要是浏览器.

因此,作为Meteor的一部分,目标是使客户端和服务器端代码之间的差异有些透明,它需要一种机制来维护这种“类型保真度”,对于Dates,ObjectId等,在与客户端和服务器之间传输数据时.

因此,EJSON和JSON的区别在于,生成的JSON包含标识这些“类型”的特殊键,因此可以通过这种方式正确处理它们,尤其是在与服务器进程通信时.

猜你在找的JavaScript相关文章