搜索功能返回多个结果
Search function return multiple results
我目前正在尝试制作一个搜索函数,该函数在数组中搜索字符串,并返回数组中与字符串匹配的位置的索引。
例如:
Array: [1,2,3,4,5,2,3,1,6,5,2]
Search input: 3
Output:
2
6
Search input: 2
Output:
1
5
10
目前我使用只输出1个值
document.getElementById("result").innerHTML=
但我希望它返回多个结果
如果您编写自己的函数,您应该能够返回一个索引数组:
function indicesOf(input, value) {
var indices = new Array();
for (var i = 0; i < input.length; i++) {
if (input[i] == value)
indices.push(i);
}
return indices;
}
然后,您可以组合数组值并将其放入结果位置,如@AnthonyGrist:所建议的那样
document.getElementById('result').innerHTML = indicesOf(input, value).join(', ');
我不确定这是否是你想要的,但如果你想从DOM中返回带有给定选择器的所有对象(而不是对过滤后的javascript数组执行操作并返回),那么你可以使用document.querySelectorAll(<your_selector_here>)
-MDN的更多信息
您可以执行此
var arr = [1,2,3,4,5,2,3,1,6,5,2];
arr.map(function(x, i){
return x == 3 ? i : null;
}).filter(Number); // get indexes
上面映射并过滤掉索引。那么这只是加入的问题
document.getElementById("result").innerHTML= arr.join("<br />");
相关文章:
- 是否可以将JXBrowser显示的JS确认对话框的结果返回到调用它的JS部分
- 将字符串结果返回到表单元格中的新行中
- 如何从批处理文件调用一个带有2个参数的java脚本函数,并将结果返回到环境变量
- 使用 JSON 和 ExtJS 将 MPDF 结果返回给浏览器
- 将信息结果返回到多个输入字段
- 如何将变量从javascript发送到php并将结果返回给JS
- 将 JavaScript 变量传递给 PHP,并将 PHP 结果返回给 JavaScript 变量
- 当没有结果返回 JavaScript 搜索时显示消息
- 加载相同的结果返回按钮
- 如果搜索框位于_SiteLayout页(在页眉 DIV 中),如何将搜索结果返回给用户
- MVC C#中的自定义操作结果返回特定视图
- 使用javascript/lodash对特定键的相同值进行分组,并对其进行计数,然后将结果返回到数组
- 如何使用javascript将循环结果返回到列中
- 结果返回为“未定义”
- 搜索未检测到结果返回-Selectize.js
- 调用一个打开活动并将活动结果返回给javascript的java函数
- 将PHP结果返回到原始html页面
- ASP.. NET MVC控制器结果返回到视图
- 如何通过AJAX传递值来更改SQL搜索查询并将结果返回给HTML ?
- Asp.net MVC或javascript将另一个页面的结果返回给方法