<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<textarea id="base64Text" cols="30" rows="10"></textarea>
<input type="text" id="filename" placeholder="文件名">
<button id="download">点击下载</button>
<script>
var base64Text = document.getElementById("base64Text"),
filename = document.getElementById("filename"),
download = document.getElementById("download")
download.onclick=function(){
var base64 = base64Text.value;
if(base64){
base64 = base64.split(",");
let type = base64[0].match(/^data:([\s\S]+?);base64$/)[1]
let text = base64[1];
let base64data = atob(text);
let u8a = new Uint8Array(base64data.length);
for(let i = 0;i<base64data.length;i++){
u8a[i]=base64data.charCodeAt(i);
}
let blob = new Blob([u8a],{type:type});
let a = document.createElement("a");
a.href = URL.createObjectURL(blob);
a.download=filename.value||"文件";
a.click()
}
}
</script>
</body>
</html>