Javascript变量中的多个值

use*_*795 6 javascript

有没有办法让一个变量具有多个值,如下所示:

var variable = 1, 2, 3;
var enteredVal = 1;

if (enteredVal == variable){
    alert('You chose the right number');
}
Run Code Online (Sandbox Code Playgroud)

因此,如果变量enteredVal等于1,2或3,它将提醒消息.我似乎无法理解它.

ajp*_*243 10

无法为单个变量分配多个不同的值.

另一种方法是variable成为一个Array,你可以检查是否enteredval在数组中.

var variable = [1, 2, 3];
var enteredval = 1;

if (variable.indexOf(enteredval) > -1){
    alert('you chose the right number');
}
Run Code Online (Sandbox Code Playgroud)

请注意,indexOf阵列在IE8及以下版本中不可用(请参阅底部的"要求"部分).在这种情况下,您需要使用框架/库的方法,或者自己编写:

var variable = [1, 2, 3];
var enteredval = 1;

for (var i = 0; i < variable.length; i++) {
    if (variable[i] === enteredval) {
        alert('you chose the right number');
        break; // No need to check all the other values in variable
    }
}
Run Code Online (Sandbox Code Playgroud)

要修改阵列已实例化后,他们,看看push,pop,shift,和unshift添加/删除值.要修改现有值,可以直接访问索引并重新分配值.

variable[1] = 5;
// variable is now [1, 5, 3] since arrays are 0-indexed
Run Code Online (Sandbox Code Playgroud)