JS метод String.slice()
Загальний опис
Метод String.prototype.slice() - це зручний спосіб для вирізання підрядка з існуючого рядка. Він дозволяє вказати початкову та кінцеву позиції для вирізання, ефективно використовуючи індекси символів у рядку. Цей метод є корисним для обробки рядків, наприклад, при зміні форматування даних, видаленні небажаних символів або просто для отримання специфічної частини рядка.
slice() можна використовувати для отримання частини рядка, вказавши початковий індекс (включно) і кінцевий індекс (не включно). Якщо кінцевий індекс не вказаний, метод виріже усе до кінця рядка. Наприклад:
let text = "Привіт, світ!";
let part = text.slice(0, 6);
console.log(part); // Виведе "Привіт"
Якщо вказати від'ємні індекси, slice() рахуватиме від кінця рядка:
let part = text.slice(-5, -1);
console.log(part); // Виведе "світ"
Цей метод можна використовувати для створення функцій, які динамічно обробляють текст. Наприклад, функція для видалення останнього символу з рядка:
function removeLastChar(str) {
return str.slice(0, -1);
}
console.log(removeLastChar("Привіт!")); // Виведе "Привіт"
Головна особливість методу slice() полягає в тому, що він не змінює оригінальний рядок, а повертає новий підрядок. Це робить slice() безпечним для використання, оскільки оригінальний рядок залишається незмінним. Також варто зазначити, що slice() зручний у використанні, оскільки легко враховує від'ємні індекси, дозволяючи гнучко вирізати підрядки з кінця рядка.
Таким чином, String.prototype.slice() є надзвичайно корисним для різноманітних операцій з рядками, пропонуючи як простоту використання, так і гнучкість для більш складних завдань.
| Нотатка: | Метод |
| Порада: | Метод дозволяє використовувати від'ємні індекси, які відлічуються з кінця рядка. Наприклад, |
| Порада: | Пам'ятайте, що при використанні |
| Порада: | Важливо пам'ятати, що |
Синтаксис
slice(indexStart)
slice(indexStart, indexEnd)
Параметри
- *
indexStart Індекс першого символу, який включається у повернений підрядок. Цей параметр визначає, звідки починається вилучення символів у рядку.
indexEndІндекс першого символу, який виключається з поверненого підрядка. Якщо цей параметр опущений, метод
slice()виділяє символи до кінця рядка.
Return
stringПовертає новий рядок, який містить вилучену частину початкового рядка. Виділення виконується згідно з заданими індексами
indexStartтаindexEnd. ЯкщоindexEndне вказано, метод виділяє всі символи відindexStartдо кінця рядка. Важливо, що оригінальний рядок залишається незмінним, а результатом є цілком новий рядок.
Переглядачі
| Переглядач | |||||
|---|---|---|---|---|---|
1 |
1 |
1 |
4 |
12 |
| Переглядач | ||||
|---|---|---|---|---|
4.4 |
18 |
4 |
1 |
| Переглядач | ||
|---|---|---|
0.10.0 |
1.0 |
Приклади
У цьому прикладі, користувач вводить рядок та вказує початковий та кінцевий індекси. Після натискання кнопки "Вирізати", скрипт використовує метод slice() для вирізання підрядка. Результат відображається на сторінці, демонструючи динамічну взаємодію з методом slice().
У цьому прикладі ми використовуємо метод String.prototype.slice() для вирізання підрядка з вихідного рядка. Цей метод дозволяє легко отримати частину рядка, вказуючи початковий та кінцевий індекси. Він корисний для витягування специфічних даних із тексту.
// Визначення вихідного рядка
let sentence = "Сьогодні чудовий день для програмування.";
// Вирізання слова "чудовий" з рядка (індекси 9-16)
let word = sentence.slice(9, 16);
console.log(word);
// Виведе: "чудовий"
У цьому складнішому прикладі, ми використовуємо String.prototype.slice() з від'ємними індексами для вирізання частини рядка з кінця. Від'ємні індекси дозволяють легко працювати з рядками, коли потрібно отримати частину рядка, починаючи з кінця.
// Визначення вихідного рядка
let email = "[email protected]";
// Вирізання домену з електронної адреси
let domain = email.slice(email.lastIndexOf("@") + 1);
console.log(domain);
// Виведе: "example.com"
