如何使用id在javascript中调用对象

时间:2017-07-15 10:08:33

标签: javascript type-conversion

这是我的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然后使用它给我未定义。请帮帮我

1 个答案:

答案 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>