はじめに
こんにちは。SBI証券での投信積立にクレカが使用できるようになったので、対象の三井住友カードを申し込みました。
クレカで積立できるとポイントたまるのでお得です!皆様もぜひ!
さて、今回は、JavaScriptでPHPのarray_pad
をしたいときがあり、生み出したコードを共有します。
コピペで使えるので良ければ使ってくださいませ
PHPのarray_pad
関数とは
配列が指定長に満たない場合、指定長まで指定の値で埋めることができる関数です。
リファレンスこちら↓
$ php --rf array_pad
Function [ <internal:standard> function array_pad ] {
- Parameters [3] {
Parameter #0 [ <required> array $array ]
Parameter #1 [ <required> int $length ]
Parameter #2 [ <required> mixed $value ]
}
- Return [ array ]
}
使用例
<?php
$array = [12, 10, 9];
$length = 5;
$val = 'hello';
$result = array_pad($array, $length, $val);
// [12, 10, 9, 'hello', 'hello']
?>
JavaScriptでarray_padしたい!
const array = [12, 10, 9]
const length = 5
const val = 'hello'
const result = [
...array,
...[...Array(length - array.length)].map(e => val)
]
// [12, 10, 9, 'hello', 'hello']
2021/07/26(月) 追記
**コメント**をいただきまして、こちらの方がスマートで素敵なコードになります
ぜひこちらを使用してくださいませ!
concat使うならスプレッド構文は不要でしたね。
const result = array.concat(Array(length - array.length).fill(val));
const array = [12, 10, 9]
const length = 5
const val = 'hello'
const result = array.concat(Array(length - array.length).fill(val));
おわりに
いろいろやり方あると思いますが、個人的に一番シンプルにできた気がしてます
それでは!