base64 文件格式判断 图片类型判断 js

通过JS判断BASE64字符串的文件类型

函数的入参是文件的base64字符串,可以全传入或者只传入前三个字符。

判断依据是不同文件的文件头的差别。

这里只例举了我所用到的几种图片的格式。

可以自行将文件转成base64,并提取出文件头加入到这个Map里。

/**
 * @author PiaoZhenJia
 */
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;
}

你可能感兴趣的:(javascript,base64)