我有<input type="file">
选择了本地文件,我想将其作为文件上传到服务器,而不是Blob。我用jQuery(元素然后.files[0]
或.prop('files')[0]
)抓住它。
除了一个指示外,该对象的原型是File:
Object.getPrototypeOf(file) // => File {slice: function}
file.__proto__ // => File {slice: function}
file.constructor // => function File() { [native code] }
file.constructor.prototype // => File {slice: function}
然而:
file instanceof File // => false
file instanceof Blob // => true
是什么给出的?
答案 0 :(得分:1)
inf3rno的评论得出答案 - 我的网络应用程序覆盖了File
变量。
答案 1 :(得分:0)
我遇到类似问题,我在页面开始渲染时在File
变量中保存OriginFile
,但file instanceof OriginFile
仍然给我false
。但是这个例子http://jsfiddle.net/drzfmgba/令人难以置信地在同一个浏览器中运行(Mac Chrome 41)。
无论如何......我通过Object.prototype.toString.call(file) === '[object File]'
解决了这个问题。