Решил тут прикольную задачку про вычисление «совершенных чисел» на JS.
Совершенное число

Например число: — это «совершенное число», потому что его делители: 1, 2, 3 в сумме равные ему: 1 + 2 + 3 = 6.
А например число: 10 — это «НЕ совершенное число», потому что его делители: 1, 2, 5 в сумме НЕ равны ему: 1 + 2 + 5 = 10

Сможете такое?

Мое решение:
const maxValue = 10000; // до куда вычисляем

for (let i = 1; i < maxValue; i++) {
  let divisors = [];

  for (let j = 1; j < i; j++) {
    if (i % j === 0) {
      divisors.push(j);
    }
  }

  let sum = 0;
  divisors.forEach((el) => {
    sum += el;
  });

  if (sum === i) {
    console.log(`${divisors.join(" + ")} = ${sum}`);
  }
}