Perl では、次の構文を使用して文字を複数回繰り返すことができます。
$a = "a" x 10; // results in "aaaaaaaaaa"
Javascript でこれを実現する簡単な方法はありますか? もちろん関数を使うこともできますが、組み込みのアプローチや他の巧妙なテクニックがあるかどうか知りたいです。
ベストアンサー1
最近では、repeat
文字列メソッドほぼどこでも実装されています。(Internet Explorerでは利用できませんしたがって、古いブラウザをサポートする必要がない限り、次のように記述するだけで済みます。
"a".repeat(10)
以前はrepeat
、次のハックを使用していました:
Array(11).join("a") // create string with 10 a's: "aaaaaaaaaa"
(長さ 11 の配列では、Array.join
引数が配列要素間に置かれるため、"a" は 10 個しか取得されないことに注意してください。)
サイモンはまた、このベンチマークただし、Safari と Chrome (Firefox ではない) では、for ループを使用して単純に追加することで、文字を複数回繰り返す方が高速であるようです (ただし、少し簡潔さに欠けます)。