连接变量以与变量进行比较

时间:2014-08-06 08:29:42

标签: javascript

嗨,这一切都很简单,但出于某种原因,我无法记住如何做到这一点我有以下代码

            var m1q1Correct = '1';
            q = arguments[1];

            var ans = $('input[name=m' + m + 'q' + q + ']:checked', '#containerFrm').val();
            if ('m' + m + 'q' + q + 'Correct' == q) {
                alert('right');
            } else {
                alert('wrong');
            }

我也试过这个

            var ans = $('input[name=m' + m + 'q' + q + ']:checked', '#containerFrm').val();
            if (eval('m' + m + 'q' + q + 'Correct') == q) {
                alert('right');
            } else {
                alert('wrong');
            }

我试图加入m + m + q + q +正确作为变量名称,任何人都可以告诉我哪里出错了

感谢

2 个答案:

答案 0 :(得分:0)

可能javascript正在做一些特殊的添加字符/数字。

如果m和q只是数字,我会将它们转换为字符串并连接它们。

var n = num.toString();

var res = str1.concat(str2);

答案 1 :(得分:0)

您可以使用对象存储变量map而不是单独的变量。那么您不需要应用eval

var vars = {'m1q1Correct': '1'};
q = arguments[1];
var ans = $('input[name=m' + m + 'q' + q + ']:checked', '#containerFrm').val();
if (vars['m' + m + 'q' + q + 'Correct'] == q) {
    alert('right');
} else {
    alert('wrong');
}