小编Abu*_*101的帖子

单行任务:检查范围 - CodeWars(使用 JavaScript 的方法)

任务

给定一个整数数组 a 和两个整数 x 和 y。计算数组中元素的数量,使得 `x ? [i] ? y,其中 i 是元素的从 0 开始的索引。

代码限制

少于 48 个字符。

例子

对于 a = [2, 5, 6, 7, 1, 3, 4, 11, 56, 49],x = 1 和 y = 7,输出应为 7。

应计算元素 2、5、6、7、1、3、4。

我累了filterreduce如果不让它超过 48 个字符想不出任何其他可能的方法。

这是通过使用 filter

checkRange=(a,x,y)=>a.filter(i=>i>=x&&i<=y).length
Run Code Online (Sandbox Code Playgroud)

使用 reduce

checkRange=(a,x,y)=>a.reduce((c,i)=>i>=x&&i<=y?++c:c,0);
Run Code Online (Sandbox Code Playgroud)

函数调用示例

a =[95,92,27,55,55,20,40,8,7,45,87,14,44,35,64,84,95,85,69,47,53,49,95,54,97,7,67,31,76,97,7,24,82,61,10,34,34,85,66,96,65,2,84,4,68,74,46,50]
    x = 64
    y = 76

checkRange(a,x,y) // Expected: 8
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经收到了 50 多个字符……我需要将它们减少到 47 个。

到目前为止的一些提示......

  • 使用另一种更短的方法
  • 计算索引值,而不是使用length.
  • 不需要 …

javascript methods shortest

4
推荐指数
1
解决办法
1099
查看次数

标签 统计

javascript ×1

methods ×1

shortest ×1