Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Как проверить, начинается или заканчивается ли строка подстрокой

Короткий ответ

Метод startsWith() проверяет начало строки, endsWith() — конец:

const file = 'report-2025.pdf';
 
console.log(file.startsWith('report'));
console.log(file.endsWith('.pdf'));

Результат:

true
true

Без учёта регистра

Оба метода учитывают регистр. Сначала приведите строку к нижнему регистру:

const file = 'PHOTO.JPG';
 
console.log(file.endsWith('.jpg'));
console.log(file.toLowerCase().endsWith('.jpg'));

Результат:

false
true

Один из нескольких вариантов

Чтобы проверить сразу несколько вариантов, объедините some() и startsWith():

const url = 'https://example.com';
const secure = ['https://', 'wss://'].some((prefix) => url.startsWith(prefix));
 
console.log(secure);

Результат:

true

Частая ошибка

Сравнение indexOf(...) === 0 тоже работает, но ищет по всей строке и хуже читается. И помните, что пустая подстрока подходит всегда:

console.log('hello'.startsWith(''));

Результат:

true

Функции из этого ответа

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.