有时候我们可能会将图片的base64掐除前面的data:image/jpg;,那么怎么判断数据类型呢?
封面下面这个方法就好了~
function base64FileHeaderMapper(fileBase64) {
let fileHeader = new Map();
//获取不同文件的文件头前3个字作为判断依据
fileHeader.set("/9j", "JPG")
fileHeader.set("iVB", "PNG")
fileHeader.set("Qk0", "BMP")
fileHeader.set("SUk", "TIFF")
fileHeader.set("JVB", "PDF")
fileHeader.set("UEs", "OFD")
let res = ""
//遍历map中所提及的文件头特征
fileHeader.forEach((v, k) => {
if (k == fileBase64.substr(0, 3)) {
res = v
}
})
//如果不在map中返回unknown file
if (res == "") {
res = "unknown file"
}
//否则返回map中的value值
return res;
}