假设x是一个正整数,我将如何返回数字x的前n个倍数? 这是我到目前为止所拥有的: 我希望它返回的是: 但是它实际返回的是: 答案 0 :(得分:2) 您在 答案 1 :(得分:0) 答案 2 :(得分:0) 您的想法正确,但是在循环中交换了 答案 3 :(得分:0) function multiples(x, n){
var arr=[];
for (var i=1; i<=x; ++i)
arr.push(n*i);
return arr;
}
console.log(
multiples(2, 5)
);
multiples(2, 5) // [2, 4, 6, 8, 10]
[5, 10]
4 个答案:
x
循环中切换了n
和for
//changed var to const & let
function multiples(x, n) {
const arr = [];
for (let i = 1; i <= n; i++)
arr.push(x * i);
return arr;
}
console.log(multiples(2, 5));
使用ES6传播算子,您可以这样做:
function multiples(x, n) {
return [...Array(n)].map((_, i) => x * ++i);
}
console.log(multiples(2, 5))
使用ES6 Array.from(...),您可以这样做:
function multiples(x, n) {
return Array.from(Array(n)).map((_, i) => x * ++i);
}
console.log(multiples(2, 5))
x
交换n
function multiples(x, n){
var arr=[];
for (var i=1; i<=n; ++i)
arr.push(x*i);
return arr;
}
console.log(
multiples(2, 5)
);
x
和n
:for (var i = 1; i <= n; ++i)
arr.push(x * i);
const multiples = (x, n) => Array(n).fill().map((_, i) => x * ++i);
console.log(multiples(2, 5));