JSFiddle - React, Tailwind, and code Playground
JavaScript
var html = '111 < script type="text/javascript">alert(123);< /script> 222'.replace(/< /g, '<');
insertHtml(document.body, html);
//----------------------------------------
function insertHtml(elem, text) {
elem.innerHTML = text;
var scripts = elem.querySelectorAll('script');
for (var i = 0; i < scripts.length; ++i) {
var scriptElem = scripts[i];
var newScriptElem = document.createElement('script');
var attrs = scriptElem.attributes;
var attribute;
if (scriptElem.src) {
newScriptElem.async = false;
newScriptElem.src = scriptElem.src;
} else {
newScriptElem.innerHTML = scriptElem.innerHTML;
}
if (attrs.length > 0) {
for (var attrNo = attrs.length; attrNo--;) {
attribute = attrs[attrNo];
if (!(attribute.name in newScriptElem.attributes)) {
newScriptElem.setAttribute(attribute.name, attribute.value);
}
}
}
scriptElem.parentNode.removeChild(scriptElem);
elem.appendChild(newScriptElem);
}
}