有没有办法让一个变量具有多个值,如下所示:
var variable = 1, 2, 3;
var enteredVal = 1;
if (enteredVal == variable){
alert('You chose the right number');
}
因此,如果变量 enterVal 等于 1、2 或 3,它会提醒消息。我似乎无法理解它。
有没有办法让一个变量具有多个值,如下所示:
var variable = 1, 2, 3;
var enteredVal = 1;
if (enteredVal == variable){
alert('You chose the right number');
}
因此,如果变量 enterVal 等于 1、2 或 3,它会提醒消息。我似乎无法理解它。
无法将多个不同的值分配给单个变量。
另一种方法是拥有variable
一个Array
,您可以检查是否enteredval
在数组中。
var variable = [1, 2, 3];
var enteredval = 1;
if (variable.indexOf(enteredval) > -1){
alert('you chose the right number');
}
请注意,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
}
}
要在实例化数组后修改它们,请查看push
、pop
、shift
和unshift
用于添加/删除值。要修改现有值,您可以直接访问索引并重新分配值。
variable[1] = 5;
// variable is now [1, 5, 3] since arrays are 0-indexed
您可以将它们存储在一个数组中并使用indexOf
(只要您不需要 IE 8 支持):
var supportedOptions = [1, 2, 3],
enteredVal = 1;
if(supportedOptions.indexOf(enteredVal) !== -1) alert("Yep!");
尝试使用数组:
var variables = [1, 2, 3];
您可以使用 访问数组的成员variables[i]
,其中i
是数组的索引,从 开始0
。
variables[0]
返回1
variables[1]
返回2
variables[2]
返回3
这样,您可以使用for
循环遍历数组:
var enteredval = 1; //your guess
for(var i = 0; i < variables.length; i++) { //go through each element
if(variables[i] == enteredval) { //if they match...
alert("You chose the right number!"); //...then you got it!
}
}
您可以将变量的值作为键存储在对象中。例如:
let variable={
1:0,
2:0,
3:0
}
enteredVal=3
if (enteredVal in variable) {
alert('You chose the right number');
}
您将要创建一个array
可以容纳多个值的。然后,您将要使用index of
来确定是否在数组中找到该值。
var myArray = new Array();
myArray[0] = 1;
myArray[1] = 2;
myArray[2] = 3;
检查值:
if(myArray.indexOf(1) > -1){
// exists
}
您可以实现字符串的 indexof 函数。
var variable = '1,2,3';
var enteredval = '1';
if (variable.indexOf(enteredval) > -1) { alert('you choosed the right number'); };