1
複数の<script>
タグが同じJavascriptリソースを指している場合、ブラウザは<script>
タグごとに1回実行されますか?または、ブラウザは重複しませんか?複数のスクリプトタグが重複して実行されますか?
この場合、どうなりますか?
<script src="example.js"></script>
<script src="example.js"></script>
複数の<script>
タグが同じJavascriptリソースを指している場合、ブラウザは<script>
タグごとに1回実行されますか?または、ブラウザは重複しませんか?複数のスクリプトタグが重複して実行されますか?
この場合、どうなりますか?
<script src="example.js"></script>
<script src="example.js"></script>
example.js
それはスクリプトタグによって参照されるたびに立候補ます。ブラウザは重複を解消しようとしません。ただし、サーバーから一度だけ要求することがあります。
これは、async
およびdefer
属性でも同じです。
何らかの理由で、あなたは一度だけ実行するようにコードを引き起こす重複スクリプトタグをサポートしたい場合、あなたは可能性がありinclude guards for Cと同様の手法。
例えば、example.js
は含めることができます:
if (window.example === undefined) {
window.example = {
publicFunction: function publicFunction() {
// ...
},
// ...
};
}
いいえ、それはありませんデデュープを。これは2回含まれていますが、それ自体を再定義しないのは、コードを含むことです。 –