Javascript:导出大文本/ csv文件会使Google Chrome浏览器崩溃

王W:

我有以下Javascript代码可在客户端导出CSV文件。但是,每次尝试导出大型阵列时,Google Chrome浏览器都会崩溃。Chrome中允许的数据字符串的限制是多少?是否有可能达到Chrome允许的内存限制?如果数据字符串对于Chrome来说太长,我将如何在客户端导出大型CSV文件?

var csvRows = [...]; //Array with 40000 items, each item is 100 characters long.

var csvString = csvRows.join("\r\n");

var a = document.createElement('a');

a.href        = 'data:text/csv;charset=utf-8,' + encodeURIComponent(csvString);
a.target      = '_blank';
a.download    = 'export.csv';

document.body.appendChild(a);
a.click();

(预计文件大小约为6.4MB)

扬:

有同样的问题,并使用Blob解决了

例如:

csvData = new Blob([csvString], { type: 'text/csv' }); 
var csvUrl = URL.createObjectURL(csvData);
a.href =  csvUrl;

资料来源:https : //stackoverflow.com/a/24611096/3048937

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么Google Chrome浏览器总是在所选文本后添加空格?

如何在Google Chrome浏览器的嵌入式Javascript中设置断点?

在Google Chrome浏览器中的jsfiddle.net上检查javascript

使用Google Chrome浏览器调试和编辑HTML页面中嵌入的JavaScript

在Google Chrome浏览器中调试时是否可以更改javascript变量值?

如何在Google Chrome浏览器中启动JavaScript调试器?

如何使用JavaScript在Android的Google Chrome浏览器中获取固定的地址栏

只能在Google Chrome浏览器中使用的Javascript文件

将HTML表格导出到Google Chrome浏览器中的csv

为什么Google Chrome浏览器不支持此JavaScript语法?

Google Chrome浏览器中的随机单词/文本变为粗体

上传大文件(100mb +)仅会使Chrome浏览器崩溃

(JavaScript)为什么while循环中的“ if”中的continue语句会使浏览器崩溃?

如何在Google Chrome浏览器中导出单个书签文件夹?

导出大量的Chrome浏览器书签

如何在Google Chrome浏览器中选择超链接文本?

如何在Google Chrome浏览器中导出书签?

Google Chrome浏览器崩溃报告分析

Javascript仅可在Google Chrome浏览器中以调试模式运行

每次我访问网站时都强制Google Chrome浏览器检查新的JavaScript文件

Chrome浏览器打开/崩溃的文件过多/对不起,吉姆

使用Google Chrome浏览器选择文本时需要额外的空间

Google Chrome浏览器不断崩溃

Google Chrome浏览器崩溃

Google Chrome浏览器在64位Ubuntu 14.04上使整个系统崩溃

导航到Google Chrome浏览器中的文本字段的键盘快捷键

如何在Google Chrome浏览器中激活JavaScript调试器?

更新后Google Chrome浏览器崩溃

通过命令行/批处理文件打开页面时,将JavaScript代码注入Google Chrome浏览器