スクリプトを動的読み込みする際、script.( A ) = true だと並列取得・到着次第実行(順序は保証されない)。script.( B ) = true だと解析後に順序を保って実行される。
解答
A: async
B: defer
解説
async は実行順序非保証で最速、defer は HTML 解析完了後に DOMContentLoaded 前までに読み込まれた順に実行されます。
使用例(サンプルコード)
[ html ]
<script>
const s = document.createElement('script');
s.src = 'app.js';
s.defer = true; // または s.async = true;
s.onload = () => console.log('loaded');
document.head.appendChild(s);
</script>