用于替换名称的javascript变量

时间:2016-09-01 07:34:53

标签: javascript

我怎样才能使if else if语句按预期工作?在这种情况下 thisminion.optiontable[option]thisminion.attack

的呼叫相同

我确实有以下内容:

var option = 1;

 var optiontable = {1: 'attack', 2: 'defence', 3: 'intelligence'};
            var $result = [];
            var nameoption = optiontable[option];

 if (thisminion.optiontable[option] <= 100) {
                increasement = 10;
            } else if (thisminion.optiontable[option] >= 100 && thisminion.optiontable[option] < 200) {
                increasement = 5;
            } else if (thisminion.optiontable[option] >= 200 && thisminion.optiontable[option] < 300) {
                increasement = 5;
            } else if (thisminion.optiontable[option] >= 300 && thisminion.optiontable[option] < 400) {
                increasement = 1;
            } else {
                increasement = 0;
            }

1 个答案:

答案 0 :(得分:1)

如果我正确地阅读了您的问题,请使用括号表示法optiontable[option]作为操作数:

if (thisminion[optiontable[option]] <= 100) {

获取optiontable[option]'attack')的并使用它来查找attack的{​​{1}}属性。

这与您在查找thisminion时所做的完全相同;使用optiontable[option]option上使用该名称查找属性(在这种情况下为optiontable)。

示例:

1