Javascript Base64编码UTF8字符串在webkit / safari中失败

前端之家收集整理的这篇文章主要介绍了Javascript Base64编码UTF8字符串在webkit / safari中失败前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试base64编码包含泰语字符的utf8字符串.我正在使用浏览器内置的btoa功能.它适用于ascii文本,但Thai会导致它抛出INVALID_CHARACTER_ERR:DOM异常5异常.

这是一个失败的样本(看起来像“n”的字符是泰语)

BTOA( ‘一个ก’)

我需要做什么来base64编码非ascii字符串?

解决方法

  1. var Base64 = {
  2. encode: function(s) {
  3. return btoa(unescape(encodeURIComponent(s)));
  4. },decode: function(s) {
  5. return decodeURIComponent(escape(atob(s)));
  6. }
  7. };

猜你在找的JavaScript相关文章