我希望能够使用用户输入的输入来搜索数组。因此,例如,如果用户在输入字段中输入“18”,则会出现“未找到值”或“找到值”,具体取决于数字 18 是否在数组中。
这就是我到目前为止所拥有的。
var search = document.getElementById("search");
var arr = [18,23,20,17,21,18,22,19,18,20];
function beginhere() {
var input = document.getElementById("Input").value;
for (i=0; i<arr.length; i++){
if (arr[i] == Input) {
alert(arr[i]);
} else {
alert("Value not found");
}
}
};
最佳答案
您的错误是Input
中区分大小写的i
if (arr[i] == Input) {
应该是
if (arr[i] == input) {
然后你真的不需要else
部分。只需在循环后面写入未找到警报,并在 if 内写入 return 语句即可。
function beginhere() {
var input = document.getElementById("Input").value;
for (i=0; i<arr.length; i++){
if (arr[i] == input) {
alert(arr[i]);
return;
}
}
alert("Value not found");
};
如果没有循环,你可以尝试
function beginhere() {
var input = document.getElementById("Input").value;
if(arr.indexOf(parseInt(input)) != -1) {
alert(input);
return;
}
alert("Value not found");
};
关于javascript - 使用用户输入搜索数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43293675/