FileReaderSync是以同步的方式读取FileBlob对象中的内容,但是由于它是同步读取的,会造成主线程的阻塞,在读取的内容过大时会感受到明显的卡顿,所以该接口限制了使用的范围(只能在webworker中使用)。

一、FileReaderSync的方法

方法

作用

参数

返回值

readAsArrayBuffer()

读取blob或者File对象的内容

File/Blob

读取内容的二进制字符串

readAsBinaryString()(被上一个替代)

读取blob或者File对象的内容

File/Blob

读取内容的二进制字符串

readAsText()

读取blob或者File对象的内容

File/Blob

读取内容为文本字符串

readAsDataURL()

读取blob或者File对象的内容

File/Blob

读取内容为为数据URL

 

二、FileRaderSync的使用

var reader = new FileReaderSync();
var result = reader.readAsText(blob);//同步读取,直接用变量接收读取的返回值即可

注意:

1、使用的方式基本相当于FileReader,不过是以同步的形式读取。

2、FileReaderSync是同步读取文件内容,所以只能在webworker中使用,不然会造成主线程的阻塞。