This page was translated from English by the community.Learn more and join the MDN Web Docs community.
String.prototype.slice()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
Сводка
Методslice() извлекает часть строки и возвращает новую строку без изменения оригинальной строки.
In this article
Интерактивный пример
const str = "The quick brown fox jumps over the lazy dog.";console.log(str.slice(31));// Expected output: "the lazy dog."console.log(str.slice(4, 19));// Expected output: "quick brown fox"console.log(str.slice(-4));// Expected output: "dog."console.log(str.slice(-9, -5));// Expected output: "lazy"Синтаксис
str.slice(beginIndex[, endIndex])
Параметры
beginIndexИндекс, с которого начинать извлечение (нумерация начинается с нуля). Если аргумент отрицателен, то трактуется как
str.length + beginIndex(например, еслиbeginIndexравен-3, то он трактуется какstr.length - 3). ЕслиbeginIndexне является числом при проверкеNumber(beginIndex), он трактуется как0.Если
beginIndexбольше или равенstr.length, возвращается пустая строка.endIndexИндекс,перед которым заканчивать извлечение (нумерация начинается с нуля). Символ по этому индексу не будет включён.
Если *
endIndex*опущен или являетсяundefinedили больше чемstr.length,slice()извлечёт всё до конца строки. Если аргумент отрицателен, то трактуется какstr.length + endIndex(например, еслиendIndexравен-3, то он трактуется какstr.length - 3). Если аргумент неundefinedи не является числом при проверкеNumber(endIndex), возвращается пустая строка.Если
endIndexуказан и меньшеstartIndex, то возвращается пустая строка (например,slice(-1, -3)илиslice(3, 1)вернут"").
Возвращаемое значение
Новая строка, содержащая извлечённую часть строки.
Описание
Методslice() извлекает текст из одной строки и возвращает новую строку. Изменения текста в одной строке не влияют на другую строку.
Методslice() извлекает все символы до индексаendIndex, не включая сам этот индекс. Вызовstr.slice(1, 4) извлечёт символы со второго по четвёртый (символы под индексами1,2 и3).
К примеру, вызовstr.slice(2, -1) извлечёт символы с третьего по второй с конца строки.
Примеры
>Пример: использование методаslice() для создания новой строки
В следующем примере методslice() используется для создания новой строки.
let str1 = "Приближается утро.";let str2 = str1.slice(1, 8);let str3 = str1.slice(4, -2);let str4 = str1.slice(12);let str5 = str1.slice(30);console.log(str2); // ВЫВОД: риближаconsole.log(str3); // ВЫВОД: лижается утрconsole.log(str4); // ВЫВОД: утро.console.log(str5); // ВЫВОД: ""Пример: использование методаslice() с отрицательными индексами
В следующем примере методslice() используется вместе с отрицательными индексами.
let str = "Приближается утро.";str.slice(-3); // вернёт 'ро.'str.slice(-3, -1); // вернёт 'ро'str.slice(0, -1); // вернёт 'Приближается утро'В этом примере начальным индексом считается11-й символ с конца строки, а конечным -16-й с начала.
str.slice(-11, 16); // вернёт 'ается утр'Здесь начальным индексом считается6-й символ от начала строки, а конечным - 7-й с конца.
str.slice(6, -7); // вернёт 'жаетс'В этом примере оба индекса считаются с конца строки: 5-й для начального индекса,1-й для конечного.
str.slice(-5, -1); // вернёт 'утро'Спецификации
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-string.prototype.slice> |