前言
在前端开发中,我们经常会遇到需要将字符串或者数据进行 base64 编码的情况。JavaScript 中的 btoa()
函数可以实现将字符串进行 base64 编码,但是由于该函数并非所有浏览器都支持,因此我们需要使用一些 polyfill 或者库来实现跨平台兼容性。
本文将介绍一个 npm 包 btoa-umd,它提供了一个 UMD 格式的函数 btoa()
,可以在浏览器和 Node.js 环境中都能够使用。
安装
可以通过 npm 安装 btoa-umd:
npm install btoa-umd
使用
使用 btoa-umd,只需要在 JavaScript 文件中引入即可:
在浏览器环境中使用
<script src="path/to/btoa-umd.js"></script> <script> console.log(btoa('hello world')); // aGVsbG8gd29ybGQ= </script>
在 Node.js 环境中使用
const btoa = require('btoa-umd'); console.log(btoa('hello world')); // aGVsbG8gd29ybGQ=
模块化使用
当使用模块化管理工具(如 webpack)时,btoa-umd 将以 UMD 格式代码打包,可以直接 import 引入:
import btoa from 'btoa-umd'; console.log(btoa('hello world')); // aGVsbG8gd29ybGQ=
示例代码
-- -------------------- ---- ------- ------ ---- ---- ----------- ----- ---- - - ----- ----- ---- --- ------- ------ -- ----- ----------- - --------------------------- ------------------------- -- -------------------------------------------------------- ----- ----------- - ------------------------------ ------------------------- -- - ----- ----- ---- --- ------- ------ -
这是一个示例代码,将一个 JavaScript 对象进行序列化后使用 btoa()
函数进行 base64 编码,然后使用 atob()
函数进行解码,最终得到和原来相同的 JavaScript 对象。这个过程中使用了 btoa-umd 实现跨平台的兼容性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066c8cccdc64669dde53d8