关于window.btoa的疑问

window.btoa()无法操作超出0x00 ~ 0xFF范围的字符,然后MDN给出了一个例子

// ucs-2 string to base64 encoded ascii
function utoa(str) {
    return window.btoa(unescape(encodeURIComponent(str)));
}
// base64 encoded ascii to ucs-2 string
function atou(str) {
    return decodeURIComponent(escape(window.atob(str)));
}

但是我这里不明白为啥要这样处理,不能像下面这样,不是更简单么?

let base64Str = window.btoa(encodeURIComponent("你好啊"));
console.log(decodeURIComponent(window.atob(base64Str)));  
阅读 1.4k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题