Hm. Ich hab das genommen, was der TO vorgab...
Zu Deinem Test:
const textContent = document.querySelector('p').textContent; console.log(textContent.indexOf('&')); // -1 console.log(textContent.indexOf('\u{00A0}')); // 15
Invertiertes Ergebnis:
const textContent = document.querySelector('p').innerHTML;
console.log(textContent.indexOf('&')); // 15
console.log(textContent.indexOf('\u{00A0}')); // -1
Da muss man wohl sehr aufpassen, wie man die vermeintlichen Zahlen gewinnt.