Sobes.tech
Middle

Live-codering taak: gegeven een array van objecten met velden id, title en data, moet je unieke titels krijgen zonder rekening te houden met hoofdlettergebruik.

sobes.tech AI

Antwoord van AI

Чтобы получить уникальные значения поля title без учёта регистра из массива объектов, можно использовать следующий подход на JavaScript:

const items = [
  { id: 1, title: 'Apple', data: '...' },
  { id: 2, title: 'apple', data: '...' },
  { id: 3, title: 'Banana', data: '...' },
  { id: 4, title: 'BANANA', data: '...' },
  { id: 5, title: 'Cherry', data: '...' }
];

const uniqueTitles = [];
const seen = new Set();

for (const item of items) {
  const lowerTitle = item.title.toLowerCase();
  if (!seen.has(lowerTitle)) {
    seen.add(lowerTitle);
    uniqueTitles.push(item.title);
  }
}

console.log(uniqueTitles); // ['Apple', 'Banana', 'Cherry']

Здесь мы используем Set для отслеживания уже встреченных названий в нижнем регистре, чтобы избежать дубликатов, но сохраняем оригинальный регистр первого встретившегося значения.