String.prototype.slice()
Метод slice()
вирізає частину рядка та повертає її як новий рядок, не змінюючи початковий.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Синтаксис
str.slice(beginIndex[, endIndex])
Параметри
beginIndex
-
Індекс на основі нуля, з якого починається копіювання. Якщо індекс від'ємний, він сприймається як
str.length + beginIndex
. (Наприклад, якщоbeginIndex
дорівнює-3
, він сприймається якstr.length - 3
.)Якщо значення
beginIndex
більше за довжину рядкаstr.length
або дорівнює їй,slice()
повертає порожній рядок. endIndex
Optional-
Індекс на основі нуля, до якого треба виконувати копіювання. Символ за цим індексом не буде включений.
Якщо
endIndex
відсутній,slice()
копіює до кінця рядка. Якщо його значення від'ємне, він сприймається якstr.length + endIndex
. (Наприклад, якщоendIndex
дорівнює-3
, він сприймається якstr.length - 3
.)
Значення, що повертається
Новий рядок, що містить вказану частину рядка.
Опис
Метод slice()
дістає текст з одного рядка та повертає новий рядок. Зміни у тексті одного з рядків не впливають на інший рядок.
slice()
скопіює текст по індекс endIndex
(але не включно). str.slice(1,4)
копіює з другого по четвертий символ (символи за індексами 1
, 2
, та 3
).
Наприклад, str.slice(2, -1)
копіює частину від третього до другого з кінця символу рядка.
Приклади
Використання slice()
для створення нового рядка
Наступний приклад використовує slice()
, щоб створити новий рядок.
let str1 = "П'ять мавпенят стрибали на столі", // довжина str1 дорівнює 32.
str2 = str1.slice(1, 8),
str3 = str1.slice(6, -2),
str4 = str1.slice(15),
str5 = str1.slice(32);
console.log(str2) // РЕЗУЛЬТАТ: 'ять ма
console.log(str3) // РЕЗУЛЬТАТ: мавпенят стрибали на сто
console.log(str4) // РЕЗУЛЬТАТ: стрибали на столі
console.log(str5) // РЕЗУЛЬТАТ: ""
Використання slice()
з від'ємними індексами
Наступний приклад використовує slice()
з від'ємними індексами.
let str = "П'ять мавпенят стрибали на столі."
str.slice(-6) // вертає "столі."
str.slice(-6, -1) // вертає "столі"
str.slice(0, -1) // вертає "П'ять мавпенят стрибали на столі"
Цей приклад відраховує у зворотньому напрямку, від кінця рядка, 12
, щоб знайти початковий індекс, та вперед з початку рядка 25
, щоб знайти кінцевий індекс.
console.log(str.slice(-12, 25)) // => "ли н"
Тут він рахує вперед від початку 21
, щоб знайти початковий індекс, і у зворотньому напрямку з кінця 8
, щоб знайти кінцевий індекс.
console.log(str.slice(21, -8)) // => "ли н"
Ці аргументи відраховують у зворотньому напрямку з кінця 5
, щоб знайти початковий індекс, та у зворотньому напрямку з кінця 1
, щоб знайти кінцевий індекс.
console.log(str.slice(-5, -1)) // => "толі"
Специфікації
Сумісність з веб-переглядачами
BCD tables only load in the browser