Вопрос проверяет понимание принципов чистого кода и важности избегания магических строк для улучшения читаемости и поддерживаемости кода.
Магические строки — это строковые литералы, которые используются непосредственно в коде без присвоения имени. Например, if (status === 'active') — это магическая строка. Они считаются плохой практикой, потому что ухудшают читаемость, усложняют поддержку и повышают риск ошибок при изменениях.
'active' не объясняет, что она означает. Другой разработчик может не понять, какие значения допустимы.'actve') не будет обнаружена компилятором или интерпретатором, пока код не выполнится.function getStatusMessage(status) {
if (status === 'active') return 'User is active';
if (status === 'inactive') return 'User is inactive';
return 'Unknown status';
}Вынесите строки в константы или перечисления:
const STATUS = {
ACTIVE: 'active',
INACTIVE: 'inactive'
};
function getStatusMessage(status) {
if (status === STATUS.ACTIVE) return 'User is active';
if (status === STATUS.INACTIVE) return 'User is inactive';
return 'Unknown status';
}Теперь код самодокументируем, а изменение значения требует правки только в одном месте.
Используйте константы или перечисления вместо магических строк, чтобы сделать код более читаемым, надёжным и лёгким в поддержке. Это особенно важно в больших проектах, где строки могут повторяться десятки раз.