★ 将File对象转换为URL的两种方式

方式一. URL.createObjectURL(object) 返回了一个DOMString包含了一个对象URL,该URL可用于指定源 object的内容。其参数为用于创建 URL 的File 对象、Blob 对象或者 MediaSource 对象。​
方式二. FileReader.readAsDataURL(file) 读取指定的 Blob 或 File 对象,读取时触发onload事件,返回的结果中将是一个包含data:URL格式的字符串(base64编码)以表示所读取文件的内容。

★ 说明

这两种方法,参数都是blob对象或File 对象,返回一个可以用a标签打开的url,这两种方法都可用于下载文件。

★ 同步异步

createObjectURL是同步执行
FileReader.readAsDataURL是异步执行

★ 代码示例

方式一: URL.createObjectURL(object)

imageUrl = URL.createObjectURL(blob对象或File 对象)

方式二: FileReader.readAsDataURL(file)

const reader = new FileReader()
reader.readAsDataURL(blob对象或File 对象)
reader.onload = () => {
  imageUrl = reader.result
}