replace() так не работает:
('<test>').replace(['<', '>'], ''); // "<test>"
Заменить угловые скобки можно так:
content = content.replace(/[<>]/g, '');
Это
регулярное выражение / /
, которое заменяет "глобально" (флаг
g
) во всей строке
любой из симолов внутри квадратных скобок
[ ]
, на пустую строку
''
.
Уверены, что хотите в превью пропускать любые теги, включая
script
? Это может быть небезопасно.
Более разумная, может, идея – создать
в теневой DOM узел с этим HTML, в нём удалить запретные теги через обычные
querySelectorAll('script')
и затем уцелевшее дерево вставить в элемент для предпросмотра.
Другой вариант — вставить этот HTML в iFrame с максимально строгими запретами.