UNPKG

@cloudcome/utils-browser

Version:
1 lines 1.29 kB
{"version":3,"file":"base64.cjs","sources":["../src/base64.ts"],"sourcesContent":["// @ref https://blog.csdn.net/m0_72642319/article/details/139743196\n\n/**\n * 【浏览器环境】将字符串编码为 Base64 格式\n * @param input 要编码的字符串\n * @returns 编码后的 Base64 字符串\n * @remarks\n * 在 Node.js 环境中使用 Buffer 实现,在浏览器环境中使用 TextEncoder 和 btoa 实现\n */\nexport function encodeBase64(input: string) {\n const encoder = new TextEncoder();\n const unit8Array = encoder.encode(input);\n return btoa(String.fromCharCode(...unit8Array));\n}\n\n/**\n * 【浏览器环境】 将 Base64 字符串解码为原始字符串\n * @param input 要解码的 Base64 字符串\n * @returns 解码后的原始字符串\n */\nexport function decodeBase64(input: string) {\n const decoder = new TextDecoder();\n const unit8Array = Uint8Array.from(atob(input), (c) => c.charCodeAt(0));\n return decoder.decode(unit8Array);\n}\n"],"names":[],"mappings":";;AASO,SAAS,aAAa,OAAe;AACpC,QAAA,UAAU,IAAI,YAAY;AAC1B,QAAA,aAAa,QAAQ,OAAO,KAAK;AACvC,SAAO,KAAK,OAAO,aAAa,GAAG,UAAU,CAAC;AAChD;AAOO,SAAS,aAAa,OAAe;AACpC,QAAA,UAAU,IAAI,YAAY;AAC1B,QAAA,aAAa,WAAW,KAAK,KAAK,KAAK,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC/D,SAAA,QAAQ,OAAO,UAAU;AAClC;;;"}