startsWith() в JavaScript
- Что такое startsWith()
- Синтаксис
- Проверка начала строки
- Регистр имеет значение
- Проверка с позиции
- startsWith() и includes()
- Итого
startsWith() проверяет, начинается ли строка с указанного текста.
let url = 'https://learnjs.ru';
console.log(url.startsWith('https'));
Результат:
true
Строка начинается с ‘https’, поэтому метод вернул true.
Что такое startsWith()
startsWith() - это метод строки. Он возвращает true или false.
let fileName = 'photo.png';
console.log(fileName.startsWith('photo'));
console.log(fileName.startsWith('video'));
Результат:
true
false
Метод проверяет именно начало строки, а не любое место внутри нее.
Синтаксис
Основная запись выглядит так:
string.startsWith(searchString);
searchString - текст, с которого должна начинаться строка.
let text = 'JavaScript';
console.log(text.startsWith('Java'));
Результат:
true
Проверка начала строки
startsWith() удобно использовать, когда важно именно начало значения.
let phone = '+79991234567';
if (phone.startsWith('+7')) {
console.log('Российский номер');
}
Результат:
Российский номер
Еще пример - проверка пути.
let path = '/lessons/startswith/';
console.log(path.startsWith('/lessons/'));
Результат:
true
Регистр имеет значение
startsWith() учитывает регистр букв.
let text = 'JavaScript';
console.log(text.startsWith('Java'));
console.log(text.startsWith('java'));
Результат:
true
false
Если нужно проверить начало строки без учета регистра, можно привести строки к одному регистру.
let text = 'JavaScript';
let search = 'java';
console.log(text.toLowerCase().startsWith(search.toLowerCase()));
Результат:
true
Проверка с позиции
У startsWith() есть второй аргумент. Он указывает позицию, с которой нужно начать проверку.
string.startsWith(searchString, position);
Например, проверим, начинается ли часть строки с индекса 4 со слова ‘Script’.
let text = 'JavaScript';
console.log(text.startsWith('Script', 4));
Результат:
true
С индекса 4 действительно начинается текст ‘Script’.
Важно: второй аргумент не ищет текст по всей строке. Он только сдвигает место, откуда начинается проверка.
let text = 'JavaScript';
console.log(text.startsWith('Script', 2));
Результат:
false
startsWith() и includes()
includes() проверяет, есть ли текст где угодно внутри строки.
let text = 'JavaScript';
console.log(text.includes('Script'));
Результат:
true
startsWith() проверяет только начало.
let text = 'JavaScript';
console.log(text.startsWith('Script'));
Результат:
false
Если важно именно начало строки, лучше использовать startsWith().
Итого
startsWith() проверяет, начинается ли строка с указанного текста.
- Метод возвращает
trueилиfalse. - Проверяется начало строки, а не вся строка целиком.
- Регистр букв влияет на результат.
- Вторым аргументом можно указать позицию начала проверки.
- Если нужно искать текст в любом месте строки, подойдет
includes().