Javascript 如何在if语句中使用数组变量?
是否可以使其在键入任何数组变量时仍执行if/else函数 根据您希望条件在每个数组元素上为真还是至少在一个数组元素上为真,您可以使用or。根据您希望条件在每个数组元素上为真还是至少在一个数组元素上为真,您可以使用or。我猜您想检查数组中是否存在键入的值?如果是:Javascript 如何在if语句中使用数组变量?,javascript,arrays,Javascript,Arrays,是否可以使其在键入任何数组变量时仍执行if/else函数 根据您希望条件在每个数组元素上为真还是至少在一个数组元素上为真,您可以使用or。根据您希望条件在每个数组元素上为真还是至少在一个数组元素上为真,您可以使用or。我猜您想检查数组中是否存在键入的值?如果是: var n = new Array(); n[0] = "zero"; n[1] = "first"; n[2] = "second" function myFunction() { var x=prompt("Question?")
var n = new Array();
n[0] = "zero";
n[1] = "first";
n[2] = "second"
function myFunction()
{
var x=prompt("Question?")
for (var i in n) {
if (x.toLowerCase() === n[i] ){ alert("true"); }
}
}
myFunction();
您需要支持IE8和更早版本,您需要为Array.prototype.indexOf(例如)添加一个垫片。我猜您想检查数组中是否存在键入的值?如果是:
var n = new Array();
n[0] = "zero";
n[1] = "first";
n[2] = "second"
function myFunction()
{
var x=prompt("Question?")
for (var i in n) {
if (x.toLowerCase() === n[i] ){ alert("true"); }
}
}
myFunction();
如果您需要支持IE8及更早版本,则需要为Array.prototype.indexOf(例如)添加一个垫片。问题不清楚不清楚您想做什么。你想干什么?无法将字符串与那样的数组进行比较。抱歉。真的很难在这里表达。基本上,如果有人键入数组值(“零”、“第一”…),则可以执行if或else语句。如果
(x..==n)
只需在提示框中键入字母“n”时执行语句即可。@LiamB实际上,x.toLowerCase()==n
在输入框中键入字母n
时将不为真n
是字符串的数组“零”、“第一”、“第二”
,它不等于字符串“n”
。总而言之,n
是一个数组,x.toLowerCase()
是一个包含小写输入的字符串。你正在检查一个字符串是否等于一个数组,这是错误的。问题不清楚,不清楚你想做什么。你想干什么?无法将字符串与那样的数组进行比较。抱歉。真的很难在这里表达。基本上,如果有人键入数组值(“零”、“第一”…),则可以执行if或else语句。如果(x..==n)
只需在提示框中键入字母“n”时执行语句即可。@LiamB实际上,x.toLowerCase()==n
在输入框中键入字母n
时将不为真n
是字符串的数组“零”、“第一”、“第二”
,它不等于字符串“n”
。总而言之,n
是一个数组,x.toLowerCase()
是一个包含小写输入的字符串。你正在检查一个字符串是否等于一个数组,这是错误的。+1,你今天的成绩很好。在edgewise中我几乎找不到一个词。indexOf()方法在InternetExplorer8和更早版本中不受支持。考虑循环使用数组,或者从JS库中使用一个。代码是有效的,你设法理解了我措辞拙劣的问题+1@sshen这是真的,添加了一个到示例垫片的链接。+1,您今天很顺利。在edgewise中我几乎找不到一个词。indexOf()方法在InternetExplorer8和更早版本中不受支持。考虑循环使用数组,或者从JS库中使用一个。代码是有效的,你设法理解了我措辞拙劣的问题+1@sshen没错,添加了一个链接到示例垫片。
function myFunction() {
var x = prompt("Question?")
if (n.indexOf(x.toLowerCase()) > -1) {
//code
} else {
//code
}
}