JavaScript可以';t在数组中显示图像

JavaScript可以';t在数组中显示图像,javascript,html,getelementbyid,Javascript,Html,Getelementbyid,我有以下数组: function theMiddle(){ var arrayTheMiddle = new Array (showName.theMiddle +"<br />" + beginingTime.theMiddle +" <br />" + network.abc +"<br />" + duration.thirty +"<br />" + rating.general +"<br />" +

我有以下数组:

function theMiddle(){
var arrayTheMiddle = new Array (showName.theMiddle  +"<br />" + beginingTime.theMiddle  +"  <br    />" + network.abc  +"<br />" + duration.thirty  +"<br />" + rating.general  +"<br />" +    description.theMiddle  +"<br />" + showImagetheMiddle);
 document.getElementById("gridbar").innerHTML=(arrayTheMiddle);
 }
我的所有对象都显示在我的网页上,但showImagetheMiddle显示以下错误:

[对象HTMLImageElement]

我环顾四周,发现了更复杂的显示图像的方法,我希望保持简单,并将图像添加到现有阵列中(如上所示)。这可能吗?如果不是,我做错了什么


任何帮助都将不胜感激

由于
arrayTheMiddle
是数组,因此需要使用下标运算符
[]
从中获取元素。在您的示例中,图像是数组中的第一个(第0个)元素。您的线路应改为:

document.getElementById("gridbar").innerHTML = arrayTheMiddle[0];
作为旁注,最好使用方括号符号
[]
(而不是下标运算符)创建数组

编辑:看到您的评论后,我建议您使用
.appendChild
将元素插入文档。因为简单地通过
+
进行追加并不能按您期望的方式工作。这是您的代码:

var arrayTheMiddle = [showName.theMiddle  +"<br />" + beginingTime.theMiddle  +"  <br    />" + network.abc  +"<br />" + duration.thirty  +"<br />" + rating.general  +"<br />" +    description.theMiddle  +"<br />"];

document.getElementById("gridbar").innerHTML = arrayTheMiddle[0];
document.getElementById("gridbar").appendChild( showImagetheMiddle );
数组元素仅用逗号分隔。
+
运算符不会将它们分开。下面是有效代码,但数组中只有一个元素:

var l = [ 5 + 3 + 5 + 6 ];
在代码示例中,数组是多余的。没有它,你完全可以做你需要的事情。这是您的新代码:

function theMiddle() {
    var arrayTheMiddle = ; // the same without '[' and ']'
    document.getElementById("gridbar").innerHTML= arrayTheMiddle;
    document.getElementById("gridbar").appendChild( showImagetheMiddle );
}

由于
arrayTheMiddle
是数组,因此需要使用下标运算符
[]
从中获取元素。在您的示例中,图像是数组中的第一个(第0个)元素。您的线路应改为:

document.getElementById("gridbar").innerHTML = arrayTheMiddle[0];
作为旁注,最好使用方括号符号
[]
(而不是下标运算符)创建数组

编辑:看到您的评论后,我建议您使用
.appendChild
将元素插入文档。因为简单地通过
+
进行追加并不能按您期望的方式工作。这是您的代码:

var arrayTheMiddle = [showName.theMiddle  +"<br />" + beginingTime.theMiddle  +"  <br    />" + network.abc  +"<br />" + duration.thirty  +"<br />" + rating.general  +"<br />" +    description.theMiddle  +"<br />"];

document.getElementById("gridbar").innerHTML = arrayTheMiddle[0];
document.getElementById("gridbar").appendChild( showImagetheMiddle );
数组元素仅用逗号分隔。
+
运算符不会将它们分开。下面是有效代码,但数组中只有一个元素:

var l = [ 5 + 3 + 5 + 6 ];
在代码示例中,数组是多余的。没有它,你完全可以做你需要的事情。这是您的新代码:

function theMiddle() {
    var arrayTheMiddle = ; // the same without '[' and ']'
    document.getElementById("gridbar").innerHTML= arrayTheMiddle;
    document.getElementById("gridbar").appendChild( showImagetheMiddle );
}

实际上,我的图像对象ShowImageMiddle是数组中列出的最后一个对象。显示之前列出的所有对象,但图像对象不显示。我假设我不能像现在这样将一个图像对象放入一个现有数组中?@junaidkaps不,不要这样做。在文档对象上使用
.appendChild
。我会更新我的帖子。啊!理解!非常好,谢谢你,好先生!为失实陈述道歉。另一方面,appendChild是显示图像的最佳方式还是最正确的方式?@junaidkaps是的,事实上,它建议您以这种方式将其他HTML元素放入DOM中。另外,
+
不会分离数组元素。逗号运算符不执行
。此外,您不需要为此设置数组。我将再次更新我的帖子,并提供详细信息。感谢您对阵列的澄清。是的,我的印象是“+”运算符分隔元素,而不是“,”运算符。我是JavaScript新手,从来没有意识到这一点!真的很感激!实际上,我的图像对象ShowImageMiddle是数组中列出的最后一个对象。显示之前列出的所有对象,但图像对象不显示。我假设我不能像现在这样将一个图像对象放入一个现有数组中?@junaidkaps不,不要这样做。在文档对象上使用
.appendChild
。我会更新我的帖子。啊!理解!非常好,谢谢你,好先生!为失实陈述道歉。另一方面,appendChild是显示图像的最佳方式还是最正确的方式?@junaidkaps是的,事实上,它建议您以这种方式将其他HTML元素放入DOM中。另外,
+
不会分离数组元素。逗号运算符不执行
。此外,您不需要为此设置数组。我将再次更新我的帖子,并提供详细信息。感谢您对阵列的澄清。是的,我的印象是“+”运算符分隔元素,而不是“,”运算符。我是JavaScript新手,从来没有意识到这一点!真的很感激!