JavaScript对象和元素ID

JavaScript对象和元素ID,javascript,html,dom,Javascript,Html,Dom,我的项目的目标是创建一个匹配的图片游戏,用户点击两张图片。之后 单击图像时,它将翻转到其备用图像。如果两张图片匹配,则我将删除 (或隐藏)这两个图像。删除所有图片后,游戏完成 我有一段HTML,如下所示 <body> <img src = "somepicture.jpg" onclick = "SomeFunction()" id = "pic0"> <img src = "someotherpicture.jpg" onclick = "Some

我的项目的目标是创建一个匹配的图片游戏,用户点击两张图片。之后 单击图像时,它将翻转到其备用图像。如果两张图片匹配,则我将删除 (或隐藏)这两个图像。删除所有图片后,游戏完成

我有一段HTML,如下所示

<body>
    <img src = "somepicture.jpg" onclick = "SomeFunction()" id = "pic0">
    <img src = "someotherpicture.jpg" onclick = "SomeFunction()"  id = "pic1">
    ...etc...
</body>
我还有JavaScript代码,它生成每个元素并给出每个元素的属性

每次我生成一个img时,我都想将它与一个我自己声明的片段对象链接起来。这个想法 工件对象能够存储成员变量状态,该状态确定图片是否面朝下(未单击) 或面朝上(选定)。但我不确定如何将每个img元素的id属性与piece对象链接起来 是我创造的。或者,如果这是解决这个问题的最好办法

我在考虑制作一系列的作品。数组的索引应与img元素的 id属性

例如,片段[10]将映射到document.getElementById(“pic10”)。但我不知道如何做到这一点


提前感谢您的投入

数组可以包含文本键。用那个

var pieces = [];
pieces['pic10'] = "active";

对于一个非常简单但不是非常优雅的解决方案,您可以根据前缀和数组的索引构建id字符串

对于映射数组中的索引i

document.getElementById("pic" + i)

不要使用
onclick
属性,而是在图像上附加一个“click”事件处理程序。事件处理程序接收作为第一个属性的。事件对象的
target
属性包含对引发事件的dom元素的引用。因此,您可以使用
event.target.id

否获取引发事件的图像的id。我发誓:我已经大学毕业了。我只是在学习HTML/JavaScript。这是我为自己设计的一项任务,我的目标是最终制作俄罗斯方块,这是我在使用Java之前完成的。但我想先从一些简单的东西开始。大学里的Javascript?不,那只是C和Java。当你进入现实世界,意识到即使你刚刚毕业,你也不了解任何最新的技术,你最终会自己学习Javascript。非常正确。这就是我现在所在的船。我认为这是误导。。。您正在将名为
pic10
的属性添加到对象
片段
,该对象恰好是一个
数组
,但它不是数组的元素。这是一个简单的关联数组,很可能会达到本文的目的。javascript中的关联数组是一个对象,而不是数组——这就是为什么这会产生误导。