napi_create_typedarray


napi_status napi_create_typedarray(napi_env env,
                                   napi_typedarray_type type,
                                   size_t length,
                                   napi_value arraybuffer,
                                   size_t byte_offset,
                                   napi_value* result) 
  • [in] env:调用该 API 时所处的环境。
  • [in] typeTypedArray 中元素的标量数据类型。
  • [in] lengthTypedArray 中的元素数量。
  • [in] arraybuffer:表示类型化数组所使用的 ArrayBuffer
  • [in] byte_offsetArrayBuffer 内用于开始映射 TypedArray 的字节偏移量。
  • [out] result:一个 napi_value,表示 JavaScript 的 TypedArray

如果 API 成功,则返回 napi_ok

【Returns napi_ok if the API succeeded.】

此 API 在现有的 ArrayBuffer 上创建一个 JavaScript TypedArray 对象。TypedArray 对象提供了一种类似数组的视图,用于访问底层数据缓冲区,其中每个元素具有相同的底层二进制标量数据类型。

【This API creates a JavaScript TypedArray object over an existing ArrayBuffer. TypedArray objects provide an array-like view over an underlying data buffer where each element has the same underlying binary scalar datatype.】

要求 (length * size_of_element) + byte_offset 应该小于或等于传入数组的字节大小。如果不满足,将抛出 RangeError 异常。

【It's required that (length * size_of_element) + byte_offset should be <= the size in bytes of the array passed in. If not, a RangeError exception is raised.】

JavaScript TypedArray 对象在 ECMAScript 语言规范的 类型化数组对象部分 中有描述。

【JavaScript TypedArray objects are described in Section TypedArray objects of the ECMAScript Language Specification.】