Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript检查输入的数字是否在范围内_Javascript - Fatal编程技术网

使用JavaScript检查输入的数字是否在范围内

使用JavaScript检查输入的数字是否在范围内,javascript,Javascript,检查输入是否在数组中的范围内。假设,如果输入值为12,则答案应为ball var ranges = [{"1-10":"Apple"},{"11-20":"Ball"},{"21-30":"Cat"}] var input_number = 12; var get_answer = ... // should be "Ball" 试一试 ranges.map(x=>Object.entries(x.flat()) .find(a=>(a[0]=a[0]。拆分`-`,n>=a[0][0]&&n

检查输入是否在数组中的范围内。假设,如果输入值为12,则答案应为ball

var ranges = [{"1-10":"Apple"},{"11-20":"Ball"},{"21-30":"Cat"}]
var input_number = 12;
var get_answer = ...  // should be "Ball"
试一试

ranges.map(x=>Object.entries(x.flat())
.find(a=>(a[0]=a[0]。拆分`-`,n>=a[0][0]&&nObject.entries(x.flat())
.find(a=>(a[0]=a[0]。拆分“-”,n>=a[0][0]&&n我将使用筛选器

const getValue=(值,范围)=>{
常量res=范围。过滤器(obj=>{
常量[min,max]=Object.keys(obj)[0]。拆分(“-”;
返回值>=+min&&value 0?对象值(res[0])[0]:“不适用”
}
常量范围=[{“1-10”:“苹果”}、{“11-20”:“球”}、{“21-30”:“猫”}]
console.log(getValue(0,范围))
console.log(getValue(1,范围))
console.log(getValue(12,范围))
console.log(getValue(30,范围))
log(getValue(31,ranges))
简单代码

var ranges=[{“1-10”:“Apple”}、{“11-20”:“Ball”}、{“21-30”:“Cat”}]
函数getAns(输入_编号){
让结果为空
//处理输入范围
for(让索引在范围内){
for(输入范围[索引]){
设min=key.split('-')[0]
设max=key.split('-')[1]

如果(input_number>=min&&input_number为什么要使用具有不同键的对象数组,而不是像
{“1-10”:“Apple”,“11-20”:“Ball”,“21-30”:“Cat”}这样的单个对象
?@Barmar,谢谢你的回答。如果我在单个对象中使用,那么我如何在给定范围内找到我的输入编号。循环对象的所有属性,将键拆分为起始编号和结束编号,将输入编号与它们进行比较,如果它在范围内,则返回值。很难读取。为什么不使用一些描述性变量名称?初学者不会从这个答案中得到太多
ranges.map(x=> Object.entries(x).flat() )
      .find(a=> (a[0]=a[0].split`-`, n>=a[0][0] && n<=a[0][1] && a[1]) )