使用 JavaScript 将 Blob 转换为文件
本教程说明如何使用 JavaScript 将 blob 转换为文件。blob(二进制大对象)被定义为作为单个实体存储在数据库系统中的一小块二进制数据。
Blob 的主要用途是保存图像、视频和其他多媒体对象。请记住,并非所有数据库管理系统都支持 blob。
你可以在此处找到有关 blob 的更多信息。
使用 JavaScript 将 Blob 转换为文件
Blob()
与 File()
类似,但有两个不同之处,即 lastModifiedDate
和 name
。Blob()
没有 lastModifiedDate
和 name
。
所以,我们有两个选择,要么将这两个属性添加到 blob,要么创建一个实际文件的实例。让我们一一看看这两种情况。
将 lastModifiedDate
和 name
属性添加到 blob。
function convertBlobToFile(blob, fileName) {
blob.lastModifiedDate = new Date();
blob.name = fileName;
return blob;
}
// Remember, the first parameter of Blob must be an array
var blob = new Blob(['This is the sample data'], {type: 'text/plain'});
// we are giving a url for an image as second parameter below
var file = convertBlobToFile(blob, 'https://bit.ly/3vsUaOe');
console.log(blob instanceof File); // returns false
console.log(blob);
输出:
false
[object Blob] {
arrayBuffer: function arrayBuffer() { [native code] },
lastModifiedDate: [object Date] { ... },
name: "https://bit.ly/3vsUaOe",
size: 23,
slice: function slice() { [native code] },
stream: function stream() { [native code] },
text: function text() { [native code] },
type: "text/plain"
}
请注意,Blob
的行为类似于 File
,但不是 File
的实例。让我们通过创建 File
的实例来练习相同的示例。
JavaScript 代码:
// Remember, the first parameter of Blob must be an array
var blob = new Blob(['This is the sample data'], {type: 'text/plain'});
const file = new File([blob], 'https://bit.ly/3vsUaOe', {
type: blob.type,
});
console.log(file instanceof File); // returns true
console.log(file instanceof Blob); // returns true
console.log(file);
输出:
true
true
[object File] {
arrayBuffer: function arrayBuffer() { [native code] },
lastModified: 1646123706585,
lastModifiedDate: [object Date] { ... },
name: "https://bit.ly/3vsUaOe",
size: 23,
slice: function slice() { [native code] },
stream: function stream() { [native code] },
text: function text() { [native code] },
type: "text/plain",
webkitRelativePath: ""
}
在这里,你可能已经注意到 file
是 File
和 Blob
的一个实例,因为 file
继承了 Blob
的属性。
相关文章
在 JavaScript 中返回 False
发布时间:2024/03/21 浏览次数:166 分类:JavaScript
-
本文解释 JavaScript 中的 return false 和 preventDefault 语句;何时何地使用这些语句,它们之间有什么区别。
使用 JavaScript 将 HTML 表格导出到 Excel
发布时间:2024/03/21 浏览次数:151 分类:JavaScript
-
本教程演示了如何使用 JavaScript 将 HTML 表格数据导出到 Excel。
用 JavaScript 读取 Excel 文件
发布时间:2024/03/21 浏览次数:87 分类:JavaScript
-
在本文中,我们将了解如何在 JavaScript 中读取和解析 excel 文件。
使用 JavaScript 通过 XPath 获取元素
发布时间:2024/03/21 浏览次数:65 分类:JavaScript
-
本教程介绍如何使用 JavaScript Selenium WebDriver 获取元素 XPath。
使用 JavaScript 删除所有子元素
发布时间:2024/03/21 浏览次数:94 分类:JavaScript
-
本教程将指导你如何使用 JavaScript 删除所有子元素。它也以 jQuery 为例。
使用 JavaScript 将此关键字传递给函数
发布时间:2024/03/21 浏览次数:135 分类:JavaScript
-
本文将帮助你了解 this 关键字对给定 JavaScript 函数的设置。
使用 JavaScript 获取当前 URL
发布时间:2024/03/21 浏览次数:198 分类:JavaScript
-
在本教程中,我们将讨论如何使用四种不同的方法在 JavaScript 中获取 URL。这些方法将使用 window.location.href、document.location.href、document.URL 和 document.baseURI。