Подаване на пореден номер в callback на JavaScript

Нека направим така, че ако във нашата функция-callback е написан втори параметър, в него да се подава поредният номер на елемента в намерения набор от елементи:

javascriptforEach('.elem', function(elem, index) {
  console.log(elem);  // ще изведе елемента
  console.log(index); // ще изведе поредния номер на елемента
});

С помощта на този параметър можем, например, да добавим в края на всеки елемент неговия пореден номер:

javascriptforEach('.elem', function(elem, index) {
  elem.textContent = elem.textContent + index;
});

Нека преработим кода на нашата функция forEach за реализиране на описаното:

javascriptfunction forEach(selector, func) {
  let elems = document.querySelectorAll(selector);
  
  for (let i = 0; i < elems.length; i++) {
    func(elems[i], i);
  }
}
Задание 1

Дадени са абзаци. С помощта на създадената от нас функция forEach за всеки абзац добавете в неговото начало неговия пореден номер.