这是我的HTML代码
<p id="b1" onclick="clickFunction(this)" >+</p>
<p id="b2" onclick="clickFunction(this)">+</p>
<p id="b3" onclick="clickFunction(this)">+</p>
<p id="b4" onclick="clickFunction(this)">+</p>
<p id="b5" onclick="clickFunction(this)">+</p>
<p id="b6" onclick="clickFunction(this)">+</p>
<p id="b7" onclick="clickFunction(this)">+</p>
<p id="b8" onclick="clickFunction(this)">+</p>
<p id="b9" onclick="clickFunction(this)">+</p>
这是我的javascript代码
var status = [2, 2, 2, 2, 2, 2, 2, 2, 2];
var gameStatus = {
b1: 2,
b2: 2,
b3: 2,
b4: 2,
b5: 2,
b6: 2,
b7: 2,
b8: 2,
b9: 2
}
function clickFunction(element) {
var ids = element.id
document.write(gameStatus.ids) //but it returns undefined
};
现在我想获取id并使用该id来调用gameStatus中的对象 gameStatus.id给了我undefined。
我尝试了所有方法,例如将其转换为数字或字符串,但没有任何效果。
将它转换为数字给我Nan并将其转换为sting然后使用它给我未定义。请帮帮我
答案 0 :(得分:0)
尝试使用另一种object.value调用方法obj[varible]
在您的方法obj.ids
ID中,引用对象的keyname
而不是ids
的变量
var status=[2,2,2,2,2,2,2,2,2];
var gameStatus={b1:2,b2:2,b3:2,b4:2,b5:2,b6:2,b7:2,b8:2,b9:2}
function clickFunction(element){
var ids = element.id
document.write(gameStatus[ids])//but it returns undefined
}
<p id="b1" onclick="clickFunction(this)">+</p>
<p id="b2" onclick="clickFunction(this)">+</p>
<p id="b3" onclick="clickFunction(this)">+</p>
<p id="b4" onclick="clickFunction(this)">+</p>
<p id="b5" onclick="clickFunction(this)">+</p>
<p id="b6" onclick="clickFunction(this)">+</p>
<p id="b7" onclick="clickFunction(this)">+</p>
<p id="b8" onclick="clickFunction(this)">+</p>
<p id="b9" onclick="clickFunction(this)">+</p>