JS前端读取本地上传的File文件对象内容(包括Base64、text、JSON、Blob、ArrayBuffer等类型文件)

简介: JS前端读取本地上传的File文件对象内容(包括Base64、text、JSON、Blob、ArrayBuffer等类型文件)


读取base64图片File

file2Base64Image(file, cb) {
    const reader = new FileReader();
    reader.readAsDataURL(file);
    reader.onload = function (e) {
        cb && cb(e.target.result);//即为base64结果
    };
},

读取text、JSON文件File

readText(file, { onloadend } = {}) {
    const reader = new FileReader();
    reader.onloadend = function (e) {
        onloadend && onloadend(reader.result, e);
    };
    reader.readAsText(file);
},

读取分段Blob文件File(ArrayBuffer

image.png

readArrayBuffer(file, { onloadstart, onprogress, onload } = {}) {
    const reader = new FileReader();
    // 开始读取
    reader.onloadstart = function (e) {
        onloadstart && onloadstart(e);
    };
    // 正在加载
    reader.onprogress = function (p) {
        onprogress && (parseFloat(p.loaded / file.size).toFixed(2));
    };
    // 加载完成
    reader.onload = function (e) {
        if (reader.error) { return; }
        let buffer = new Uint8Array(reader.result);
        onload && onload(reader.result, buffer, e);
    };
    reader.readAsArrayBuffer(file);
},


相关文章
|
2天前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
6天前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
6天前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
20天前
|
存储 JSON JavaScript
JavaScript JSON
【10月更文挑战第7天】JSON 是 JavaScript 中非常重要的一个数据格式,它为数据的表示和传输提供了一种简单而有效的方式。掌握 JSON 的使用方法和特点,对于开发高质量的 JavaScript 应用具有重要意义。
|
30天前
|
存储 JavaScript 前端开发
JavaScript 对象的概念
JavaScript 对象的概念
35 4
|
28天前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
29 1
|
29天前
|
存储 JavaScript 前端开发
js中函数、方法、对象的区别
js中函数、方法、对象的区别
15 2
|
1月前
|
JavaScript 前端开发 Unix
Node.js 全局对象
10月更文挑战第5天
21 2
|
1月前
|
存储 JavaScript 前端开发
js中的对象
js中的对象
18 3
|
24天前
|
JavaScript 前端开发 大数据
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
13 0
下一篇
无影云桌面