sf-utils2 sf-utils2
版本v3.3.3-beta1
首页
  • 01.快速开始 🔥
  • 02.基础-Base
  • 03.对象-Object
  • 04.数组-Array
  • 05.方法-Function
  • 06.字符串-String
  • 07.数学-Math
  • 08.dom
  • 09.拓展
  • webpack5.x教程学习 (opens new window)
  • 例子
  • 教程 🔥
  • 例子配置
企业级后台模版 (opens new window)
版本v3.3.3-beta1
首页
  • 01.快速开始 🔥
  • 02.基础-Base
  • 03.对象-Object
  • 04.数组-Array
  • 05.方法-Function
  • 06.字符串-String
  • 07.数学-Math
  • 08.dom
  • 09.拓展
  • webpack5.x教程学习 (opens new window)
  • 例子
  • 教程 🔥
  • 例子配置
企业级后台模版 (opens new window)
  • 快速开始

  • 基础-Base

  • 对象-Object

  • 数组-Array✨✨✨

  • 方法-Function

  • 字符串-String

  • 数学-Math

  • 文件-Buffer

    • 序言
    • arrayBufferToBase64【ArrayBuffer转Base64】
    • arrayBufferToText【ArrayBuffer读取文本】
    • base64ToArrayBuffer【Base64转ArrayBuffer】
      • 1.示例
      • 2.入参说明
      • 2.1.TBaseBlobArrayBufferTransferOptions 说明
      • 3.源码
    • base64ToBlob【Base64转Blob】
    • blobToArrayBuffer【Blob转ArrayBuffer】
    • blobToBase64【Blob转Base64】
    • blobToText【Blob转文本】
    • encodeTextByArrayBuffer【ArrayBuffer对象转化加密后的文本】
    • decodeTextByArrayBuffer【ArrayBuffer对象解密密后的文本】
    • textToArrayBuffer【文本转成ArrayBuffer对象】
    • textToBlob【文本转成Blob对象】
  • 节点-dom

  • 拓展

  • nodejs

目录

base64ToArrayBuffer【Base64转ArrayBuffer】

描述

主要是将Base64转化为ArrayBuffer v3.3.2+

# 1.示例

import { base64ToArrayBuffer } from 'sf-utils2'
const base64 = 'JUU1JThEJTlFJUU5JUI5JThGJUU5JUEzJTlF' // 卞鹏飞
const arrayBuffer = await base64ToArrayBuffer(base64)
console.log(arrayBuffer)
1
2
3
4
输出结果,点击查看

# 2.入参说明

参数 说明 类型 是否必填 默认值
buffer arraybuffer 对象 ArrayBufferLike 是
options 选项 TBaseBlobArrayBufferTransferOptions ,详情见下 👇 否

# 2.1.TBaseBlobArrayBufferTransferOptions 说明

参数 说明 类型 是否必填 默认值
mimeType MimeType 类型 string,具体参考下面 否
`MimeType`类型,点击查看

# 3.源码

import { type TBaseBlobArrayBufferTransferOptions } from '@/_types/_helperTreeBaseType.ts'

/**
 * base64 转成ArrayBuffer
 * @param base64
 * @param options
 */
async function base64ToArrayBuffer(base64: string, options?: TBaseBlobArrayBufferTransferOptions) {
  // 1. 分离Base64前缀和数据部分
  const [prefix, base64Data] = base64.split(',')
  // 2. 自动提取MIME类型(从前缀中解析)
  const mimeType = options?.mimeType || prefix.match(/^data:([^;]+);?/)?.[1] || 'application/octet-stream'

  // 3. 解码Base64并转换为Uint8Array
  const binaryString = atob(base64Data || base64) // 兼容无前缀的Base64
  const bytes = new Uint8Array(binaryString.length)
  for (let i = 0; i < binaryString.length; i++) {
    bytes[i] = binaryString.charCodeAt(i)
  }
  bytes.buffer['mimeType'] = mimeType
  return bytes.buffer
}

export default base64ToArrayBuffer
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
上次更新: 2025/07/01, 14:52:29
arrayBufferToText【ArrayBuffer读取文本】
base64ToBlob【Base64转Blob】

← arrayBufferToText【ArrayBuffer读取文本】 base64ToBlob【Base64转Blob】→

Theme by Vdoing | Copyright © 2022-2025 bianpengfei
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×