- 使用内置的atob()函数来解码Base64编码的字符串
var base64String = "SGVsbG8gV29ybGQh";
var decodedString = atob(base64String);
console.log(decodedString);
- 但是,atob()函数不会处理Unicode字符,如果Base64编码的字符串包含非ASCII字符,可能会出现乱码问题。如果需要正确处理Unicode字符,可以使用以下方法
function decodeBase64(base64String) {
const padding = base64String.length % 4 === 0 ? 0 : 4 - (base64String.length % 4)
base64String += '='.repeat(padding)
const binaryString = window.atob(base64String)
const bytes = new Uint8Array(binaryString.length)
for (let i = 0; i < binaryString.length; i++) bytes[i] = binaryString.charCodeAt(i)
return new TextDecoder('utf-8').decode(bytes)
}