我是JavaScript对象的新手,我得到了一个对象列表,在该对象中有一个名为signature的属性是BLOB,我正在尝试对其进行解码以便将其显示为图像,但是当我使用它时,我无法使用它。在控制台中进行调试,返回的项目是一个数字,但它具有以下结构
"{
"signature": "/9j/4AA"
但当我console.log(typeof + deca);
表示号码时,以下是我的代码
for (const sign of result){
const deca = atob(sign.signature);
console.log(typeof + deca);
console.log(deca)我得到this
并使用它来显示
<img *ngFor="let sign of selectedUser"
[src]="sign.imageData"
alt="">
我是否需要使用修剪或切片来切断"{
"signature":
部分或我做错了什么?
答案 0 :(得分:2)
这是因为+
运算符,它会自动使变量成为number
。
https://jsfiddle.net/n97ssLma/
var test = "test"
alert(typeof test) //string
alert(typeof + test) //number
将blob显示为图像,执行以下操作:
var image = document.createElement('img');
image.src="data:image/gif;base64,R0lGODlhDwAPAKECAAAAzMzM/////wAAACwAAAAADwAPAAACIISPeQHsrZ5ModrLlN48CXF8m2iQ3YmmKqVlRtW4MLwWACH+H09wdGltaXplZCBieSBVbGVhZCBTbWFydFNhdmVyIQAAOw==";
image.width=100;
image.height=100;
image.alt="here should be some image";
document.body.appendChild(image);
Using Javascript to Display Blob
更新了你的小提琴:https://jsfiddle.net/jt5ks76z/1/
使用atob方法的示例: