js-base64转二进制

function base64ToBlob(base64) {
	var arr = base64.split(',');
	var mime = arr[0].match(/:(.*?);/)[1] || 'image/png';
	// 去掉url的头,并转化为byte
	var bytes = window.atob(arr[1]);
	// 处理异常,将ascii码小于0的转换为大于0
	var ab = new ArrayBuffer(bytes.length);
	// 生成视图(直接针对内存):8位无符号整数,长度1个字节
	var ia = new Uint8Array(ab);
	
	for (var i = 0; i < bytes.length; i++) {
		ia[i] = bytes.charCodeAt(i);
	}

	return new Blob([ab], {
		type: mime
	});
}

  

posted @ 2018-08-13 15:57  炒份黄瓜  阅读(495)  评论(0编辑  收藏  举报