рони,
[...doc.body.children].forEach(el => {
if(el.tagName == "SCRIPT") {
лишний код, подход при этом часто встречается
ничего не мешает вставить скрипт в body без этого
скрипты вставленные динамически выполняются асинхронно, разницы нет
type также незачем, насколько я помню он по умолчанию "text/javascript";
<body>
<script>
var s = document.createElement('script');
s.text = "alert('Work')";
document.body.appendChild(s);
</script>
</body>