endsWith() в JavaScript
- Что такое endsWith()
- Синтаксис
- Проверка конца строки
- Регистр имеет значение
- Проверка с длиной
- endsWith() и includes()
- Итого
endsWith() проверяет, заканчивается ли строка указанным текстом.
let fileName = 'photo.png';
console.log(fileName.endsWith('.png'));
Результат:
true
Строка заканчивается на ‘.png’, поэтому метод вернул true.
Что такое endsWith()
endsWith() - это метод строки. Он возвращает true или false.
let url = 'https://learnjs.ru';
console.log(url.endsWith('.ru'));
console.log(url.endsWith('.com'));
Результат:
true
false
Метод проверяет именно конец строки, а не любое место внутри нее.
Синтаксис
Основная запись выглядит так:
string.endsWith(searchString);
searchString - текст, которым должна заканчиваться строка.
let text = 'JavaScript';
console.log(text.endsWith('Script'));
Результат:
true
Проверка конца строки
endsWith() удобно использовать, когда важно окончание значения.
let fileName = 'report.pdf';
if (fileName.endsWith('.pdf')) {
console.log('Это PDF-файл');
}
Результат:
Это PDF-файл
Еще пример - проверка домена.
let site = 'learnjs.ru';
console.log(site.endsWith('.ru'));
Результат:
true
Регистр имеет значение
endsWith() учитывает регистр букв.
let fileName = 'photo.PNG';
console.log(fileName.endsWith('.PNG'));
console.log(fileName.endsWith('.png'));
Результат:
true
false
Если нужно проверить окончание без учета регистра, можно привести строки к одному регистру.
let fileName = 'photo.PNG';
let extension = '.png';
console.log(fileName.toLowerCase().endsWith(extension.toLowerCase()));
Результат:
true
Проверка с длиной
У endsWith() есть второй аргумент. Он задает длину части строки, которую нужно проверить.
string.endsWith(searchString, length);
Например, возьмем только первые 10 символов строки ‘JavaScript Guide’.
let text = 'JavaScript Guide';
console.log(text.endsWith('Script', 10));
Результат:
true
Первые 10 символов образуют строку ‘JavaScript’, и она заканчивается на ‘Script’.
Если проверять всю строку, результат будет другим.
let text = 'JavaScript Guide';
console.log(text.endsWith('Script'));
Результат:
false
endsWith() и includes()
includes() проверяет, есть ли текст где угодно внутри строки.
let fileName = 'archive.final.zip';
console.log(fileName.includes('.final'));
Результат:
true
endsWith() проверяет только конец строки.
let fileName = 'archive.final.zip';
console.log(fileName.endsWith('.final'));
console.log(fileName.endsWith('.zip'));
Результат:
false
true
Если важно именно окончание строки, лучше использовать endsWith().
Итого
endsWith() проверяет, заканчивается ли строка указанным текстом.
- Метод возвращает
trueилиfalse. - Проверяется конец строки, а не любое место внутри нее.
- Регистр букв влияет на результат.
- Вторым аргументом можно указать длину проверяемой части строки.
- Если нужно искать текст в любом месте строки, подойдет
includes().