首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

base64 编码 js

Base64 编码是一种常见的数据编码方式,在 JavaScript 中有广泛的应用。以下是对 Base64 编码在 JS 中的相关介绍:

基础概念: Base64 编码将二进制数据转换为 ASCII 字符串格式,使用 64 个字符来表示数据。常用于在需要文本传输但实际是二进制数据的场景,如在 HTML、CSS、XML 中嵌入图片,或者在网络传输中编码数据。

优势

  1. 可以在文本环境中传输二进制数据。
  2. 数据大小通常会增加约 33%。

类型:无特定类型之分,是一种通用的编码方式。

应用场景

  1. 图片嵌入到 HTML 或 CSS 中。
  2. 在 HTTP 请求中传输二进制数据。
  3. 对小文件进行简单编码传输。

示例代码

代码语言:txt
复制
// 编码
const str = "Hello World!";
const encoded = btoa(str);
console.log(encoded); // "SGVsbG8gV29ybGQh"

// 解码
const decoded = atob(encoded);
console.log(decoded); // "Hello World!"

如果在编码或解码过程中遇到问题:

  1. 数据包含非 ASCII 字符时可能出现错误。解决方法是先将字符串转换为 UTF-8 编码的字节序列,再进行 Base64 编码。
  2. 对于非常长的字符串,可能会超出浏览器或环境的限制。此时可以考虑分段处理。

例如,处理包含非 ASCII 字符的字符串:

代码语言:txt
复制
function utf8ToBase64(str) {
  return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, 
    function toSolidBytes(match, p1) {
      return String.fromCharCode('0x' + p1);
    }));
}

function base64ToUtf8(str) {
  return decodeURIComponent(atob(str).split('').map(function(c) {
    return '%' + c.charCodeAt(0).toString(16).padStart(2, '0');
  }).join(''));
}

const unicodeStr = "你好";
const encodedUnicode = utf8ToBase64(unicodeStr);
console.log(encodedUnicode); // "5L2g5aW9"

const decodedUnicode = base64ToUtf8(encodedUnicode);
console.log(decodedUnicode); // "你好"

希望以上内容能满足您的需求!

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

16分30秒

golang教程 Go区块链 133 base64编码原理说明与代码展示 学习猿地

8分28秒

23.尚硅谷_JS基础_Unicode编码表

2分29秒

应避免硬编码(hardcode)(以及硬编码和软编码的区别)

10分7秒

python地理编码

1分14秒

演示7:编码UI

5分49秒

10-项目第三阶段/03-尚硅谷-文件下载-Base64编解码操作

45分22秒

day3-03 编码

1分0秒

微帧编码器对Sora生成式视频编码后的对比视频

10秒

微帧编码器对Sora生成式视频编码后的对比视频

29分6秒

01.尚硅谷_JS基础_JS简介

2分36秒

8个免费JS加密工具-[JS加密]

15分0秒

17_Java编码Topic讲解

领券