数値の倍数を配列にプッシュするにはどうすればよいですか?たとえば、入力が(6)の場合、次の式を保持する配列を作成します。[6, 12, 18, 24, 30, 36, etc...]
私にとって最も直感的な方法は機能しません。
for (var i = 0; i < 10; i++) {
firstArray.push(arr[0] *= 2);
}
これにより、その前の数に2が掛けられ、指数関数的に増加します。[14、28、56、112、224、448、896、1792など]
どうすればこれを達成できますか?
問題:
Pranavがコメントしたように、コードの問題は、for
ループ内で2を乗算することです。
i
イテレータインデックスを使用すると、問題を解決できます。
firstArray.push(6 * (i + 1));
i
開始して0
、i + 1
ある数与える1ベースを。
別のアプローチ:
最初に番号を追加します
var num = 6,
arr = [num];
次に、前の2倍の数を配列に追加します。
for (var i = 1; i < 10; i++) {
arr.push(arr[i - 1] + num);
}
var arr = [6];
for (var i = 1; i < 10; i++) {
arr.push(arr[i - 1] + arr[0]);
}
console.log(arr);
for
ループを使用して、同じことを1行で実行することもできます。
var arr = [];
for (let i = 0, num = 6; i < 10; i++, num += 6) {
arr.push(num);
}
console.log(arr);
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加