slice() для строк в JavaScript
- Что такое slice()
- Синтаксис
- Начальный и конечный индекс
- Конечный индекс не включается
- Один аргумент
- Отрицательные индексы
- Если начало больше конца
- Строка не меняется
- Итого
slice() возвращает часть строки.
let text = 'JavaScript';
console.log(text.slice(0, 4));
Результат:
Java
Метод взял символы с индекса 0 до индекса 4. Сам индекс 4 в результат не попал.
Что такое slice()
slice() - это метод строки, который вырезает часть строки и возвращает ее как новую строку.
let message = 'Привет, Анна';
console.log(message.slice(8, 12));
Результат:
Анна
Метод не удаляет текст из исходной строки. Он только возвращает нужную часть.
Синтаксис
Основная запись выглядит так:
string.slice(start, end);
start - индекс, с которого начинаем брать символы.
end - индекс, перед которым нужно остановиться.
let word = 'JavaScript';
console.log(word.slice(4, 10));
Результат:
Script
Начальный и конечный индекс
Первый аргумент указывает, где начать, второй - где остановиться.
let word = 'JavaScript';
console.log(word.slice(0, 4));
console.log(word.slice(4, 10));
Результат:
Java
Script
В строке ‘JavaScript’ слово ‘Java’ занимает индексы от 0 до 3, поэтому вторым аргументом передаем 4.
Конечный индекс не включается
Второй аргумент slice() не попадает в результат.
let word = 'котенок';
console.log(word.slice(0, 3));
Результат:
кот
Метод взял символы с индексами 0, 1 и 2. Символ с индексом 3 уже не взял.
Один аргумент
Если передать только один аргумент, slice() вернет строку от этого индекса до конца.
let word = 'JavaScript';
console.log(word.slice(4));
Результат:
Script
Так удобно отрезать начало строки.
Отрицательные индексы
slice() поддерживает отрицательные индексы. Они считаются с конца строки.
let word = 'JavaScript';
console.log(word.slice(-6));
Результат:
Script
-1 означает позицию последнего символа, -2 - предпоследнего и так дальше.
Можно указать два отрицательных индекса.
let word = 'JavaScript';
console.log(word.slice(-6, -3));
Результат:
Scr
Если начало больше конца
Если начальный индекс больше конечного, slice() вернет пустую строку.
let word = 'JavaScript';
console.log(word.slice(6, 2));
Результат:
slice() не меняет аргументы местами. Он просто не может взять символы в таком порядке.
Строка не меняется
slice() не изменяет исходную строку. Он возвращает новое значение.
let word = 'JavaScript';
let part = word.slice(0, 4);
console.log(word);
console.log(part);
Результат:
JavaScript
Java
Если результат нужен дальше, его записывают в переменную.
Итого
slice() используют, чтобы получить часть строки.
slice(start, end)возвращает часть строки отstartдоend.- Конечный индекс не включается в результат.
- Если передать один аргумент, метод вернет строку от него до конца.
- Отрицательные индексы считаются с конца строки.
- Исходная строка не меняется.