В JavaScript существует множество способов проверки строки на наличие дубликатов слов. Один из наиболее эффективных и простых подходов заключается в использовании объекта Set
, который поможет быстро отследить уникальные значения.
Давайте рассмотрим пример кода, демонстрирующий этот метод:
function hasDuplicates(str) {
// Разбиваем строку на массив слов
const words = str.split(" ");
// Создаем новый объект Set из массива слов,
// Set автоматически удалит все дубликаты
const uniqueWords = new Set(words);
// Если длина массива слов и уникальных слов не совпадает,
// значит, в строке были дубликаты
return words.length !== uniqueWords.size;
}
// Пример использования
const string1 = "это строка без дубликатов";
const string2 = "это строка с дубликатами дубликатами";
console.log(hasDuplicates(string1)); // false
console.log(hasDuplicates(string2)); // true
Этот код сначала разбивает входную строку на массив слов с помощью метода split()
. Затем он создает новый объект Set
из этого массива. Поскольку Set
может содержать только уникальные значения, все дубликаты будут автоматически удалены. После этого код сравнивает длину исходного массива со размером уникального Set
. Если они не совпадают, то в строке есть дубликаты, и функция возвращает true
, в противном случае false
.