RangeError: repeat count must be less than infinity

この記事は編集レビューを必要としています。ぜひご協力ください

メッセージ

RangeError: repeat count must be less than infinity and not overflow maximum string size (Firefox)

RangeError: Invalid count value (Chrome)

エラータイプ

RangeError

何がうまくいかなかったのか?

String.prototype.repeat() メソッドを使用します。count パラメーターは、文字列の繰り返し回数を指定します。 これは 0 から正の Infinity 以下の値である必要があり、負数は使用できません。有効値の範囲はこのように表現できます: [0, +∞)。

結果の文字列は、文字列サイズの最大値以上にはできません。これは JavaScript エンジンによって異なります。 Firefox(SpiderMonkey) の最大文字列数hは、 228 -1 (0xFFFFFFF)です。

無効なケース

'abc'.repeat(Infinity); // RangeError
'a'.repeat(2**28);      // RangeError

有効なケース

'abc'.repeat(0);    // ''
'abc'.repeat(1);    // 'abc'
'abc'.repeat(2);    // 'abcabc'
'abc'.repeat(3.5);  // 'abcabcabc' (count は整数に変換されます)

関連項目

ドキュメントのタグと貢献者

 このページの貢献者: YuichiNukiyama
 最終更新者: YuichiNukiyama,