我想知道是否可以將用戶輸入作為實際的 if 陳述句?例如:用戶想要查找>=100&<200陣列中的值我想做這樣的事情:
let array = [1,100,200]
let userInput = document.querySelector("#userInput").value // ">=100&<200"
for(let i = 0; i<array.length; i ){
if(array[i]&userInput){ // 'array[i]>=100&<200'
console.log(true);
}else{
console.log(false);
}
}
//result [false,true,false]
uj5u.com熱心網友回復:
let array = [1,100,200]
let userInput = ">=100&<200"
function check(userInput, x) {
const conditions = userInput.split('&').map(c => `${x}${c}`)
const conditionsSatisfied = conditions.map(c => eval(c))
return conditionsSatisfied.reduce((acc,x) => acc&&x)
}
for(let i = 0; i<array.length; i ){
if(check(userInput, array[i])){ // 'array[i]>=100&<200'
console.log(true);
}else{
console.log(false);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/453209.html
標籤:javascript html 输入
