Самое главное запомнить паттерн решения, практически в каждой задаче на анаграммы встречается следующая конструкция, разберём на примере:

// Принять массив строк, вернуть массив массивов анаграмм:
// ["тьма", "мать", "адрес", "среда", "поток"] → [["тьма", "мать"], ["адрес", "среда"]]
 
function anagram(arr) {
  // создаем объект
  let obj = {};
 
  for (let name of arr) {
    // сортируем массив, для того, чтобы проверить на анаграму
    const sorted = name.split("").sort().join("");
    if (obj[sorted]) {
      // добавляем в массив name
      obj[sorted].push(name);
    } else {
      // ключ объекта для name с анаграмой
      obj[sorted] = [name];
    }
  }
  // возвращаем значения объекта (массивы) и фильтруем их по условию
  return Object.values(ang).filter((el) => el.length > 1);
}

Таким образом, мы вывели анаграммы из списка.