Почему не работает innerHTML?
document.querySelectorAll выбирает не один, а коллекцию элементов. У этой коллекции нет свойства innerHTMl. А у её элементов есть, попробуй так
let element = document.querySelectorAll("p")[0];
   element.innerHTML="new text";
или используй document.querySelector, который получает один элемент.
Потому что document.querySelectorAll возвращает NodeList и у него нет свойства innerHtml. Но по этому списку можно итерироваться и вот у каждого элемента уже это свойство есть. Или используйте document.querySelector()