base64 转blob
时间: 2023-08-01 21:14:44 浏览: 165
要将 Base64 转换为 Blob,你可以使用 JavaScript 中的 `atob` 函数将 Base64 解码为二进制数据,然后创建一个 Blob 对象。以下是示例代码:
```javascript
function base64ToBlob(base64) {
const binaryString = atob(base64);
const len = binaryString.length;
const bytes = new Uint8Array(len);
for (let i = 0; i < len; ++i) {
bytes[i] = binaryString.charCodeAt(i);
}
return new Blob([bytes]);
}
```
你可以将 Base64 字符串作为参数传递给 `base64ToBlob` 函数,它将返回一个 Blob 对象。请注意,这里假设 Base64 字符串的编码是有效的。
希望这可以帮助到你!如果你有任何其他问题,请随时提问。
相关问题
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对象。希望对您有所帮助!如果您有任何其他问题,请随时提问。
base64转blob vue
在 Vue 中将 base64 转换为 Blob 的方法如下:
1. 先将 base64 字符串转为 Uint8Array 类型:
```javascript
let base64 = 'YOUR_BASE64_STRING';
let binaryString = window.atob(base64);
let binaryLen = binaryString.length;
let bytes = new Uint8Array(binaryLen);
for (let i = 0; i < binaryLen; i++) {
let ascii = binaryString.charCodeAt(i);
bytes[i] = ascii;
}
```
2. 然后将 Uint8Array 转为 Blob 对象:
```javascript
let blob = new Blob([bytes], { type: 'image/jpeg' });
```
完整的代码如下:
```javascript
export default {
methods: {
base64ToBlob(base64) {
let binaryString = window.atob(base64);
let binaryLen = binaryString.length;
let bytes = new Uint8Array(binaryLen);
for (let i = 0; i < binaryLen; i++) {
let ascii = binaryString.charCodeAt(i);
bytes[i] = ascii;
}
let blob = new Blob([bytes], { type: 'image/jpeg' });
return blob;
}
}
}
```
使用方法:
```javascript
let base64String = 'YOUR_BASE64_STRING';
let blob = this.base64ToBlob(base64String);
```
注意:上面的代码中,type 参数需要根据实际情况进行修改,例如图片类型为 jpeg,则 type 为 image/jpeg。
阅读全文