我有10个变量。 q1至q10

我的脚本如下:

if (q1 == '1') { q1 = 'Yes';
} else if (q1 == '2') { q1 = 'No';
} else { q1 = 'Did Not Answer'; }


我已经输入了所有10个字符。我不确定是否可以在该变量中插入另一个变量。

我正在尝试做这样的事情:

var ex = '1';
while (ex < 11) {
if (q[ex] == '1') { q[ex] = 'Yes'; ex++;
} else if (q[ex] == '0') { q[ex] = 'No'; ex++;
} else { q[ex] = 'Did Not Answer'; ex++ }


基本上,我想消除4行代码x 10个变量。

[ex]是变量内部的一个变量(表示q1,确定q1 =是,否或未回答,然后向q [ex]加1,现在将其改为q2...。

我了解[]可能不正确,只是我不知道如何以一种可以理解的方式来解释这一点。

谢谢。

最佳答案

这不会完全限制它,但是您可以创建一个函数

translate = function(v)
{
    if (v === '1') {
        v = 'Yes';
    } else if (v === '2') {
        v = 'No';
    } else {
        v = 'Did Not Answer';
    }
  return var
}


然后为每个变量调用translate(q1)等。这样会将其移动到〜16行而不是40行,并避免重复代码。

您还可以将变量重新设置为变量数组,并像这样快速遍历,但是我不知道它们的定义位置以及它们将如何工作。
编辑:Bergi有一个很好的例子。如果您可以像这样修改变量,那是最好的方法。

关于javascript - If语句-如何减少代码量。 (循环?数组?)Javascript,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11232092/

10-13 01:29