javascript - 使用用户输入搜索数组

标签 javascript arrays search

我希望能够使用用户输入的输入来搜索数组。因此,例如,如果用户在输入字段中输入“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/

相关文章:

string - 在数百万个字符串中寻找最相似的字符串

javascript - 如何查看 Internet Explorer 的 javascript 生成的 html?

javascript - 从javascript中单击的多个按钮获取值

javascript - Accordion 条件打开和关闭功能

javascript - this.state.search_results.map 不是一个函数,而是一个数组

javascript - 如何移动到数组的上一个/下一个元素

javascript - Highcharts(仪表)和 Highstock 与 Meteor 位于同一页面

php - Mongo 从集合中删除整个数组

linux - ms dos 或 cygwin 下搜索 docx 文件的命令行工具

search - 检查服务器状态时Elasticsearch 503错误