我刚开始遇到 codewars 挑战,其中之一是“生成整数范围”问题。我设法用 for 循环解决了问题,但我想知道是否可以在一行中解决这个问题?
我曾尝试将填充和映射方法与 while 和 do-while 循环结合使用。问题是我无法在返回的数组中获取第一个数字(从 min 开始)。while 循环第一次评估为真时,它返回按步长值递增的最小值。
function generateRange(min,max,step) {
return Array(Math.floor((max - min) / step ))
.fill()
.map(() => {while(min <= max) {return min+=step;}});
}
console.log(generateRange(0, 10, 2));
我期待从最小到最大的数字,并在其中一步。min = 0, max = 10, step = 2, result => [0,2,4,6,8,10] 但我得到了没有第一个起始最小值 [2,4,6,8,10] 的所有数字.
天涯尽头无女友
HUWWW
qq_遁去的一_1
相关分类