String.prototype.slice()
Сводка
Метод slice() извлекает часть строки и возвращает новую строку без изменения оригинальной строки.
Интерактивный пример
Синтаксис
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() используется для создания новой строки.
js
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() используется вместе с отрицательными индексами.
js
let str = 'Приближается утро.';
str.slice(-3); // вернёт 'ро.'
str.slice(-3, -1); // вернёт 'ро'
str.slice(0, -1); // вернёт 'Приближается утро'
В этом примере начальным индексом считается 11-й символ с конца строки, а конечным - 16-й с начала.
js
str.slice(-11, 16); // вернёт 'ается утр'
Здесь начальным индексом считается 6-й символ от начала строки, а конечным - 7-й с конца.
js
str.slice(6, -7); // вернёт 'жаетс'
В этом примере оба индекса считаются с конца строки: 5-й для начального индекса, 1-й для конечного.
js
str.slice(-5, -1); // вернёт 'утро'
Спецификации
| Specification |
|---|
| ECMAScript Language Specification # sec-string.prototype.slice |
Совместимость с браузерами
BCD tables only load in the browser