我有一个数组,其中包含从0到100的数字。
如果我单击div元素,将显示一个下拉列表,其中将显示所有这些数组元素。 但是如果我在文本字段(例如0)中键入数字,则下拉列表应自动显示数组contains [0,10,20,30,40,50,60,70,80,90,100]的值。 例如,如果我们输入数字10,则下拉列表应显示包含[10,100]的数组的值;
有人可以建议我逻辑吗?
答案 0 :(得分:1)
您可以使用以下功能。
//let arr = Array.apply(null, {length: 101}).map(Number.call, Number);
//arr is your array
//num is the number you want to search for
function filterArr(num) {
return arr
.map(i => i.toString())
.filter(i => i.includes(num.toString()))
.map(i => parseInt(i));
}
console.log(filterArr(0));//logs [ 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 ]
希望这会有所帮助。由于您未提供任何代码,因此您可能无法按原样使用此解决方案。但是逻辑应该对您有用。