【HarmonyOS】鸿蒙arrayBuffer和Uint8Array互相转化

【HarmonyOS】鸿蒙arrayBuffer和Uint8Array互相转化

前言

ArrayBuffer

ArrayBuffer内部包含一块Native内存,该ArrayBuffer的JS对象壳被分配在虚拟机本地堆(LocalHeap)。与普通对象一样,需要经过序列化与反序列化拷贝传递,但是Native内存有两种传输方式:拷贝和转移。

Uint8Array

Uint8Array是一种基本的JavaScript数组类型,用于处理二进制数据。它是无符号的8位整数数组,每个元素固定为1字节(8位)。这种数组类型主要用于操作二进制数据,如文件、图像数据或网络通信中的原始数据。

在鸿蒙(HarmonyOS)开发中,Uint8Array经常被用来处理二进制数据,例如在证书管理模块中,它被用来表示签名结果或证书二进制数据。由于Uint8Array能够有效地处理二进制数据,它在处理网络通信或文件操作时非常有用,可以提高性能并减少内存使用。

工具函数:

dart 复制代码
export class Util {

  /**
   * arrayBuffer转Uint8Array
   * @param buffer
   * @returns
   */
  public arrayBufferToUint8Array(buffer: ArrayBuffer): Uint8Array {
    let temp = new Uint8Array(buffer);
    return temp;
  }

  /**
   * uint8Array转ArrayBuffer
   * @param buffer
   * @returns
   */
  public uint8ArrayToArrayBuffer(array: Uint8Array): ArrayBuffer {
    let temp = array.buffer as ArrayBuffer;
    return temp;
  }
  
}
相关推荐
lqj_本人1 天前
HarmonyOS + Cordova:在线资源加载与拦截缓存问题排查
harmonyos
IT考试认证1 天前
华为人工智能认证 HCIA-AI Solution H13-313 题库
人工智能·华为·题库·hcia-ai·h13-313
7***37451 天前
HarmonyOS分布式能力的核心技术
分布式·华为·harmonyos
不爱吃糖的程序媛1 天前
Cordova 定位功能在鸿蒙上的实现技术博客
华为·harmonyos
t***L2661 天前
HarmonyOS国际化
华为·harmonyos
国霄1 天前
(6)Kotlin/Js For Harmony——ArkTs 开发工具套件
kotlin·harmonyos
奇风1 天前
uni-app + DevEco 鸿蒙跨平台应用开发实战1-环境安装分享
uniapp·harmonyos·鸿蒙应用开发·鸿蒙跨平台应用开发
爱笑的眼睛111 天前
HarmonyOS Scroll滚动容器深度性能优化指南
华为·harmonyos
●VON1 天前
Electron for HarmonyOS 开发环境搭建
javascript·electron·harmonyos
万少1 天前
上架元服务-味寻纪 技术分享
前端·harmonyos