base64转Blob

阅读数:73 评论数:0

跳转到新版页面

分类

html/css/js

正文

    // 再转成blod // 注意base64里面的特殊符号 在atob的时候不能识别“,”
    const base64ToBlob =(b64Data, contentType, sliceSize) => {
        contentType = contentType || '';
        sliceSize = sliceSize || 512;
        let byteCharacters = window.atob(b64Data);
        //该atob函数将base64编码的字符串解码为一个新字符串,其中包含二进制数据每个字节的字符。
        let byteArrays = [];
        for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
            let slice = byteCharacters.slice(offset, offset + sliceSize);
            let byteNumbers = new Array(slice.length);
            //通过使用.charCodeAt字符串中每个字符的方法应用它来创建一个字节值数组。
            for (let i = 0; i < slice.length; i++) {
                byteNumbers[i] = slice.charCodeAt(i);
            }
            //将此字节值数组转换为实际类型的字节数组,方法是将其传递给Uint8Array构造函数。
            let byteArray = new Uint8Array(byteNumbers);
            byteArrays.push(byteArray);
        }
        //创建一个blob:包含此数据的URL,并将其显示给用户。
        let blob = new Blob(byteArrays, { type: contentType });
        return blob;
    }



相关推荐

var video = document.querySelector('video'); var mediaSource

1、安装js-base64 npm install --save js-base64 2、引入 import {Base64} from 'js-base64' 3、使用 let encodePwd=