写一个JS的base64转blob的代码
时间: 2024-05-31 15:08:46 浏览: 82
function base64ToBlob(base64String) {
const byteCharacters = atob(base64String);
const byteNumbers = new Array(byteCharacters.length);
for (let i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
return new Blob([byteArray], { type: 'application/octet-stream' });
}
相关问题
js base64转blob
以下是将 base64 字符串转换为 Blob 对象的 JavaScript 代码示例:
```javascript
function base64toBlob(base64, type = 'application/octet-stream') {
const bstr = atob(base64);
let n = bstr.length;
const u8arr = new Uint8Array(n);
while (n--) {
u8arr[n] = bstr.charCodeAt(n);
}
return new Blob([u8arr], { type });
}
// 示例用法
const base64Str = '...'; // 待转换的 base64 字符串
const blob = base64toBlob(base64Str, 'image/png');
console.log(blob); // 输出 Blob 对象
```
base64转blob
要将Base64字符串转换为Blob对象,您可以使用以下代码:
```javascript
function base64ToBlob(base64String, contentType) {
const byteCharacters = atob(base64String);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += 1024) {
const slice = byteCharacters.slice(offset, offset + 1024);
const byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
return new Blob(byteArrays, { type: contentType });
}
```
在这个函数中,`base64String` 是Base64字符串,`contentType` 是Blob对象的内容类型。该函数将Base64字符串解码为二进制数据,并将其分割成适当大小的数组,然后使用这些数组创建一个Blob对象,并指定内容类型。
以下是一个使用示例:
```javascript
const base64String = "Your Base64 string";
const contentType = "image/png"; // 设置正确的内容类型
const blob = base64ToBlob(base64String, contentType);
// 使用blob对象进行后续操作,比如上传或预览
```
请确保提供正确的Base64字符串和内容类型,以便正确地转换为Blob对象。希望对您有所帮助!如果您有任何其他问题,请随时提问。
阅读全文