javascript 如何控制.log()一个Blob对象?

vlurs2pr  于 2023-04-04  发布在  Java
关注(0)|答案(3)|浏览(114)

我有一个Blob对象,我想通过记录它的值来检查它。我只能看到typesize属性。有没有办法做到这一点?

hsgswve4

hsgswve41#

使用FileReader查看blob中的内容的基本示例

var html= ['<a id="anchor">Hello World</a>'];
var myBlob = new Blob(html, { type: 'text/xml'});
var myReader = new FileReader();
myReader.onload = function(event){
    console.log(JSON.stringify(myReader.result));
};
myReader.readAsText(myBlob);
sqxo8psd

sqxo8psd2#

更新到2023年,现在可以使用

await blob.text()

(感谢@Kaiido)

t9aqgxwy

t9aqgxwy3#

首先,我们应该创建一个函数来将blob转换为base64:

const blobToBase64 = blob => {
  const reader = new FileReader();
  reader.readAsDataURL(blob);
  return new Promise(resolve => {
    reader.onloadend = () => {
      resolve(reader.result);
    };
  });
};

然后我们可以使用这个函数来对console.log使用它:

blobToBase64(blobData).then(res => {
  console.log(res); // res is base64 now
  // even you can click on it to see it in a new tab
});

相关问题