我的目标是将JavaScript本机数据类型序列化以存储到SQLite数据库中。我在Firefox扩展中这样做,所以我可以访问Mozilla平台XPCOM api。最初我认为最简单的方法就是存储JSON字符串。

但是,如果有一种方法可以在Mozilla平台中序列化本机数据类型,我想知道在哪里可以找到它。如果可以的话,我可以为额外的工作(如果有的话)节省多少存储空间,并且会有与JSON相比的性能成本吗?

当然,以二进制格式存储数据的收益可能不会超过简单使用JSON的难易程度。有什么建议吗?

有帮助吗?

解决方案

Firefox 3.5+具有原生JSON编码/解码功能,比Javascript引擎更快解码JSON,根据维基百科

鉴于FF3.5 +中快速(反)序列化的含义,我想你也可以坚持使用JSON字符串。如果您需要从另一种语言/平台检查数据库,那么这种方式也将实际上是跨平台兼容的。

就字符串开销而言,如果你删除不必要的空格,你会看到几个大括号,几个引号,一些逗号/冒号的开销,以及将数字存储为字符串的成本而不是原生格式。除非这被证明是您应用程序的瓶颈,否则使用简单JSON字符串的额外简单性似乎是值得的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top