firefox(9)、javascript、大数据文件导致的分配大小溢出。有没有办法避免这种情况?
我正在开发一个web应用程序,其中包括读取.csv文件并转换为.xml文件的第一次转换 我有一个20MB的文件,处理得很好(所以代码还可以) 但是我有一个80MB的文件,这个过程随着错误控制台中的消息而停止 错误:分配大小溢出 它指向存储大型xml字符串的对象的最后一行 代码基本上分割.csv文件,对于每一行,再次分割该行,然后使用添加到变量中的xml标记重新构建内容 然后我假设对于80 mb(.csv文件)的Firefox来说,字符串的大小太大了 我的问题是,我能做些什么吗,比如拆分变量或类似的解决方法?或者这会浪费时间firefox(9)、javascript、大数据文件导致的分配大小溢出。有没有办法避免这种情况?,javascript,firefox,size,overflow,allocation,Javascript,Firefox,Size,Overflow,Allocation,我正在开发一个web应用程序,其中包括读取.csv文件并转换为.xml文件的第一次转换 我有一个20MB的文件,处理得很好(所以代码还可以) 但是我有一个80MB的文件,这个过程随着错误控制台中的消息而停止 错误:分配大小溢出 它指向存储大型xml字符串的对象的最后一行 代码基本上分割.csv文件,对于每一行,再次分割该行,然后使用添加到变量中的xml标记重新构建内容 然后我假设对于80 mb(.csv文件)的Firefox来说,字符串的大小太大了 我的问题是,我能做些什么吗,比如拆分变量或类似
谢谢这个问题看起来很老,但我找到了一些解决办法。对于现代浏览器,您可以使用URL API
var file = document.getElementById('video').files[0];
window.URL = window.URL || window.webkitURL;
var video = document.querySelector("#vid");
video.preload = 'metadata';
video.onloadedmetadata = function() {
window.URL.revokeObjectURL(this.src);
let time = video.duration;
console.log(video.duration);
}
video.src = URL.createObjectURL(file);
你在释放记忆吗?像删除或设置未使用的变量为空?我不是。我认为JS可以自动进行垃圾收集。有没有办法查看JS在脚本执行过程中使用的内存?要像自动检查一个值一样,在错误发生之前给出一个好消息,或者对任何解决方案(如释放内存)是否正常进行故障排除?firebug可以告诉您memoryProfile,并为您指明正确的方向谢谢!我不知道这个分机。立即安装:)