ToLowerCase: примеры (JAVASCRIPT)
toLowerCase: stringОсновы метода toLowerCase
Метод toLowerCase() преобразует все символы строки в нижний регистр. Этот метод часто применяется при нормализации пользовательского ввода, сравнении строк без учета регистра и обработке текстовых данных.
Синтаксис метода: str.toLowerCase()
Метод не принимает параметров и возвращает новую строку, оставляя оригинальную строку неизменной. Преобразование выполняется согласно правилам Unicode, затрагивая только символы, имеющие эквивалент в нижнем регистре.
Возвращаемое значение: строка, преобразованная к нижнему регистру. Если метод вызывается на значении, не являющемся строкой, он сначала преобразует это значение в строку.
Базовые примеры использования
Стандартное применение для преобразования строки:
const text = 'JavaScript ПроГрАмМиРоВаНиЕ';
console.log(text.toLowerCase());'javascript программирование'
Использование с различными алфавитами:
console.log('HELLO МИР'.toLowerCase());
console.log('ΑΒΓΔΕ'.toLowerCase()); // Греческий
console.log('İSTANBUL'.toLowerCase()); // Турецкий'hello мир'
'αβγδε'
'istanbul'
Альтернативные методы в JavaScript
toLocaleLowerCase(): учитывает региональные настройки, что важно для языков с особыми правилами преобразования регистра (турецкий, азербайджанский).
console.log('İ'.toLocaleLowerCase('tr-TR'));
console.log('İ'.toLowerCase());'i' (турецкая точка над i)
'i' (стандартная)
toUpperCase(): выполняет обратное преобразование в верхний регистр.
Метод toLocaleLowerCase рекомендуется использовать в интернационализированных приложениях, тогда как toLowerCase подходит для большинства стандартных задач.
Типичные ошибки
Ошибка модификации исходной строки: метод возвращает новую строку, не изменяя оригинал.
let str = 'HELLO';
str.toLowerCase();
console.log(str);'HELLO' (строка не изменилась)
Правильный подход:
let str = 'HELLO';
str = str.toLowerCase();
console.log(str);'hello'
Проблемы с null и undefined:
let value = null;
console.log(value.toLowerCase());TypeError: Cannot read properties of null
Изменения в последних версиях
В современных версиях JavaScript метод toLowerCase() не претерпел значительных изменений. Однако в спецификации ECMAScript 2015 (ES6) были уточнены правила обработки суррогатных пар и специальных символов Unicode.
Важное уточнение: метод корректно работает с символами вне базовой многоязыковой плоскости, включая эмодзи и исторические письменности.
Расширенные примеры применения
Нормализация пользовательского ввода при регистрации:
function normalizeEmail(email) {
return email.trim().toLowerCase();
}
console.log(normalizeEmail(' USER@EXAMPLE.COM '));'user@example.com'
Сравнение строк без учета регистра:
function caseInsensitiveCompare(str1, str2) {
return str1.toLowerCase() === str2.toLowerCase();
}
console.log(caseInsensitiveCompare('JavaScript', 'JAVASCRIPT'));true
Обработка данных в массивах:
const tags = ['HTML', 'CSS', 'JavaScript', 'REACT'];
const lowerTags = tags.map(tag => tag.toLowerCase());
console.log(lowerTags);['html', 'css', 'javascript', 'react']
Работа с объектами и ключами:
const config = {
'API_KEY': '12345',
'API_URL': 'https://api.example.com'
};
function getConfigKey(key) {
return config[key.toUpperCase()];
}
console.log(getConfigKey('api_key'));'12345'
Обработка многострочного текста:
const multiline = `FIRST LINE
SECOND LINE
THIRD LINE`;
console.log(multiline.toLowerCase());first line
second line
third line
Аналоги в других языках программирования
Python: метод lower(), аналогичен JavaScript, но поддерживает дополнительные параметры.
text = 'PyTHoN ПроГрАмМиНг'
print(text.lower())python программинг
PHP: функции mb_strtolower() для многобайтовых строк и strtolower() для ASCII.
echo mb_strtolower('PHP ПРОГРАММИРОВАНИЕ', 'UTF-8');
echo strtolower('HELLO WORLD');php программирование
hello world
MySQL: функция LOWER() применяется в SQL-запросах.
SELECT LOWER('MySQL Database');mysql database
C: использование tolower() из ctype.h для отдельных символов.