0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

JavaScriptとHTMLの裏側の話

Posted at

#JavaScriptとHTMLの関係

例えば、画面Aと画面Bがあり、それぞれの画面で使用されているXXX.jsあった場合、共通化という意味合いで、HTML上にscriptタグとして記載することはあまり良しとされない。
ブラウザから画面が読み込まれる時、HTMLの読み込みとJSの読み込みが行われる。
画面Aを10KB、画面Bを7KB、JSが3KBであった場合、合計は20KBとなる。

◯ 画面A(10KB) + 画面B(7KB) + JS(3KB) = 20KB となり、
×  画面A(10KB) + 画面B(7KB) + JS(3KB) + JS(3KB)= 23KBでは無い。

このように共通化するメリットがあるためだ。
これはブラウザ上にJSがキャッシュされるため画面Aから画面Bに遷移した場合、画面AでXXX.js、画面BでXXX.jsとはならない。
※キャッシュしたJSのロードはされます。
この際、画面Aでしか使用しないものも、画面Bに遷移してときにロードされる。

そのため、各画面のHTMLではどのJSを読み込むかハンドリングし、処理をJSに書くようにすれば余分なJSはロードされなくなる。

###メンテナンス性から考えると...
画面Aと画面BがありXXX.js、YYY.js、ZZZ.jsを読み込んでいたとする。
この場合、HTML上にscriptタグでどのJSを読んでいるか記載が無いと、どのJSが呼ばれているか分からない。
クラス名や関数名などgrepして絞り込んでいくしかない。
上記の例はjsが3つだが10個以上となるとHTMLから追うには時間と労力を要する。
その場合、scriptタグで記載した方が良いと思われる。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?