簡體   English   中英

返回數字 x 的前 n 個倍數

[英]return the first n multiples of the number x

假設 x 是一個正整數,我將如何返回數字 x 的前 n 倍數?

這是我到目前為止所擁有的:

 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]

您在for循環中切換了xn

 //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) );

您的想法是正確的,但在循環中交換了xn

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));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM