加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

NodeJS JSON.stringify非常长的对象数组错误“无效的字符串长度

发布时间:2020-12-16 19:32:24 所属栏目:百科 来源:网络整理
导读:我有一个非常长的对象数组,大小约为100,000个项目,在我将其写入文件之前,我将数据传递给 JSON.stringify 我收到此错误: JSON.stringify( ^RangeError: Invalid string length 如何成功地对一个非常大的json对象进行字符串化? 更新: 因为我最初写过这个问
我有一个非常长的对象数组,大小约为100,000个项目,在我将其写入文件之前,我将数据传递给 JSON.stringify

我收到此错误:

JSON.stringify(
     ^
RangeError: Invalid string length

如何成功地对一个非常大的json对象进行字符串化?

更新:

因为我最初写过这个问题,所以我对处理大量数据变得更加熟悉了,我更喜欢使用Apache Spark来完成这个过程.在Spark中,习惯上不使用大型JSON数组,而是使用包含长串JSON的流或文件,每行一个对象.文件看起来像这样:

{"name":"kristian","favoriteSong":"enter sandman"}
{"name":"joshua","favoriteSong":"penny lane"}
{"name":"susan","favoriteSong":"all about that bass"}

这很好,因为:

>你可以任意处理TB级大的文件,就像轻松做一些无逻辑文件分割并将其转换成一千个较小的文件一样,逻辑是简单地在某个换行符号N处打破文件.
>这是更好的你不会有由于未关闭的JSON数组导致手上有损坏的数据文件的潜在可怕问题.
>文件中的大型JSON数组往往没有换行符,因此在VIM或其他编辑器中打开大文件是很痛苦的,因为它试图将整个内容加载到内存中,而不是带有换行符的文件,其中可以轻松地将前10行左右加载到屏幕上而不会出现问题.

How can I stringify a very large json object successfully?

在部分?例如,将数组分成更小的部分,在较小的部分上使用JSON.stringify,并将每个段追加到文件中(您必须进行一些[,和]处理).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读