JavaScript метод String.prototype.repeat()

Определение и применение

JavaScript метод repeat() возвращает новое строковое значение, который содержит указанное количество соединённых вместе копий строки на которой был вызван метод.

Поддержка браузерами

Спецификация: ecma262

Поддерживается во всех основных браузерах с 2015 года.

Показать браузеры
Совместимостьjavascript.builtins.String.repeat
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
repeat✓41✓12✓24✓28✓9✓36✓24✓28✓9✓3.0✓41✓9

поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31

JavaScript синтаксис

JavaScript
str.repeat( count );

Спецификация

ECMAScript: String.prototype.repeat()

Значения параметров

String: справочные сведения
Параметр Описание
count Конечное неотрицательное число повторений после отбрасывания дробной части. Например, -0.5 превращается в -0 и даёт пустую строку. Это количество повторений строки на которой был вызван метод. Значение ноль возвращает пустую строку, как и в случае если значение параметра отсутствует.

Исключения

String: справочные сведения
Тип исключения Описание
RangeError Возникает в том случае, если в качестве значения параметра count после отбрасывания дробной части получается отрицательное число, Infinity, или -Infinity.

Примеры, попробуйте сами

В примере «Количество повторений и исключения» показан результат вызова метода.

Количество повторений и исключения

Измените исходную строку или аргумент метода и сравните результат после запуска.

index.html
HTML
<!doctype html>
<html lang="ru">
  <head>
    <meta charset="UTF-8" />
    <title>Количество повторений и исключения</title>
  </head>
  <body>
    <p>Результат выполнения выводится в консоль.</p>
  </body>
</html>
main.js
JavaScript
var myString = 'hello' // инициализируем строковую переменную

try {
    console.log(myString.repeat(1))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает hello
try {
    console.log(myString.repeat(2))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает hellohello
try {
    console.log(myString.repeat(3))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает hellohellohello
try {
    console.log(myString.repeat(0))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat(false))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat(true))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает hello
try {
    console.log(myString.repeat(true + true))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает hellohello

try {
    console.log(myString.repeat(undefined))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat(null))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat([]))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat({}))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat('abc'))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat())
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat(''))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""
try {
    console.log(myString.repeat(' '))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Метод возвращает ""

try {
    console.log(myString.repeat(-1))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Исключение RangeError
try {
    console.log(myString.repeat(Infinity))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Исключение RangeError
try {
    console.log(myString.repeat(-Infinity))
} catch (error) {
    console.log(error.name + ': ' + error.message) // Показываем ошибку и продолжаем сравнение.
} // Исключение RangeError

console.log(JSON.stringify('x'.repeat(-0.5))) // пустая строка