javascript エラー「Uncaught RangeError: Invalid count value」の解決方法

javascript エラー「Uncaught RangeError: Invalid count value」の解決方法

javascriptで、エラー「Uncaught RangeError: Invalid count value」が発生した場合の原因と解決方法を記述してます。「repeat」にマイナス値を指定した場合などで発生します。

環境

  • OS windows11 pro 64bit
  • Apache 2.4.43
  • ブラウザ chrome 108.0.5359.125

エラー内容

以下の「repeat」に「-1」を指定したコードで発生。

let str = 'hoge';

str.repeat(-1); // Uncaught RangeError: Invalid count value

エラーメッセージ

Uncaught RangeError: Invalid count value: -1
    at String.repeat (<anonymous>)

画像

firefox(バージョン107)では、以下のエラーとなります。

Uncaught RangeError: repeat count must be non-negative

画像

原因

repeat関数に「マイナス」は指定できないため

解決方法

「マイナス」は指定できないので、絶対値を使用する

let str = 'hoge';

str.repeat(abs(-1));

少数は指定することが可能です。

let str = 'hoge';

console.log( str.repeat(2.1) )
console.log( str.repeat(2.9) )

実行結果