Javascript FileReaderSync.ReadAsText()读取需要很长时间,并且不需要回调
我试图使用Javascript FileReaderSync.ReadAsText()读取需要很长时间,并且不需要回调,javascript,asynchronous,filereader,Javascript,Asynchronous,Filereader,我试图使用FileReaderSync从文件中读取一个几乎很大的文本,因此逻辑实现如下: //之前已验证输入文件 var result=reader.readAsText(entryFile.file()); //此时结果尚未填写 //因此,下一行解析json时抛出错误 返回JSON.parse(result)
FileReaderSync
从文件中读取一个几乎很大的文本,因此逻辑实现如下:
//之前已验证输入文件
var result=reader.readAsText(entryFile.file());
//此时结果尚未填写
//因此,下一行解析json时抛出错误
返回JSON.parse(result)实际上,它似乎与FileReaderSync没有任何关系,甚至与FileReader也没有关系,只是与字符串的最大长度有关。我试图将我的大文件切成小块,并将其连接到主脚本中,但我仍然在FF中出现分配大小溢出,现在chrome也抛出了一个未捕获的RangeError:无效的字符串长度我担心除了将其作为文本块保存在数组中之外,什么都不用做。这是在Node.js中吗?为什么不使用fs.readFileSync()
?不,它只是一个chrome浏览器。你想用这个文件做什么?差不多有多大?为什么是同步而不是异步/承诺?一般的方法是缓冲读取,即填充缓冲区,处理它,读取下一个块并再次填充,重复直到文件结束。