Gibt es einen wesentlichen Unterschied zwischen innerHTML und der Verwendung von createTextNode zum Füllen einer Spanne?

Na sicher. createTextNode wird alle Zeichenfolgen maskieren und sie so zeigen, wie sie sind, während innerHTML könnte HTML-ähnliche Strings in ein DOM rendern. Wenn Sie das nicht möchten (es sei denn, Sie sind sicher, dass der Text keine nicht maskierten Tags enthält, z. B. bei der direkten Zuweisung eines Literals), können Sie textContent verwenden (oder innerText für IE).

Dennoch würde ich createTextNode empfehlen , weil es alle Browser gleichermaßen ohne Macken unterstützen.