一尘不染

如何在JavaScript中将字符串编码为Base64?

javascript

我有一个PHP脚本,可以将PNG图像编码为Base64字符串。

我想使用JavaScript做同样的事情。我知道如何打开文件,但不确定如何进行编码。我不习惯使用二进制数据。


阅读 328

收藏
2020-04-22

共1个答案

一尘不染

您可以使用btoa()atob()来与base64编码进行相互转换。

关于这些功能接受/返回的内容,评论中似乎有些混乱,所以……

  • btoa()接受一个“字符串”,其中每个字符代表一个8位字节-如果传递的字符串包含不能以8位表示的字符,则它可能会中断。 如果 您实际上将字符串视为字节数组,那么这不是问题,但是如果您尝试执行其他操作,则必须先对其进行编码。

  • atob()返回一个“字符串”,其中每个字符代表一个8位字节-也就是说,其值将在0和之间0xff。但这 并不 意味着它的ASCII -大概,如果您使用此功能在所有的,你还指望用二进制数据,而不是文字来工作。

2020-04-22