FileReaderSync:readAsArrayBuffer() 方法

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

备注: 此特性仅在 Web Worker(不包括 Service Worker)中可用。

FileReaderSync 接口的 readAsArrayBuffer() 方法允许以同步方式读取 FileBlob 对象并将其转换为 ArrayBuffer。此接口仅在 worker可用,因为它支持同步 I/O,可能导致潜在的阻塞。

语法

js
readAsArrayBuffer(blob)

参数

blob

用于读入 FileArrayBufferFileBlob

返回值

表示文件数据的 ArrayBuffer

异常

此方法可能引发以下异常:

NotFoundError DOMException

如果无法找到 DOM FileBlob 对象表示的资源,例如因为它已被删除,则抛出该异常。

SecurityError DOMException

如果检测到以下有问题的情况之一,则抛出该异常:

  • 资源已被第三方修改;
  • 同时执行太多读取;
  • 资源指向的文件对于从 Web 上使用来说是不安全的(比如它是系统文件)。
NotReadableError DOMException

如果由于权限问题(例如并发锁)而无法读取资源,则抛出该异常。

EncodingError DOMException

如果资源是 data URL 并且超出每个浏览器定义的限制长度,则抛出该异常。

规范

Specification
File API
# readAsArrayBufferSyncSection

浏览器兼容性

BCD tables only load in the browser

参见