はじめに
こんにちは。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));
おわりに
いろいろやり方あると思いますが、個人的に一番シンプルにできた気がしてます ![]()
それでは!