如果在caniuse.com上搜索File
并展开show all
,则旧版浏览器(例如Android)显然存在以下问题:
没有FileReader支持。
不支持File构造函数。
我想了解第一个陈述在实践中意味着什么。
例如,我通过HTML输入元素接收文件,如下所示:
var img_file = e.target.files[0];
请注意,img_file
是File
类型的对象。
接下来,我正在使用FileReader()
对象读取文件的前几个字节,然后确定mime类型:
var reader = new FileReader();
reader.onload = validate_file;//validates the file's mime type
reader.readAsArrayBuffer(img_file.slice(0,4));
“没有FileReader支持”是否意味着上述语句会出错?如果是这样,是否有不支持的浏览器的解决方法?我希望看到围绕这些变通方法的说明性示例(如果它们存在)。
注意:请使用纯JS作为此问题的范围,并且不使用任何第三方库。