😽
【初心者向け 094】今日はお盆で休憩!簡単なJS整理!
async defer
JSをロードする方法は主に4つあります。
1.head
2.body
3.asynk
4.defer
まず、bodyからscriptタグを付ける場合はhtmlをロードしてからjsをダウンロードします。headよりは早いですが、JSに依存するサイトの場合、逆に遅くなる可能性があります。
headの場合、fetch(サーバーからjsをダウンロード)をし、executeをするので、htmlページのロードが遅くなります。
asynkもhtmlをロードする同時にfetchを行いますが、execute時は同じくhtmlページロードが止める点と、jsが複数で順番がある場合、順序を保証しないので、リスクがあります。
deferはasynkのように、fetchは並列処理しますが、htmlをダウンロードしてから順番にjsをexecuteしますので、こちらの方がベストです!
use strict
JSの場合、データータイプを宣言しないため、データーがぐちゃぐちゃになる場合があります。TypeScript でデータータイプを指定することもできますが、Vanilla(純粋JS)からはES5から追加されたuse strictをJSの一番上に宣言することでこのような現象を防ぐことができます。
Symbol
JavaScriptでは、number,String, boolean,Objectだけではなく、Symbolというデータータイプもあります。
const sym1 = Symbol('wow');
const sym2 = Symbol('wow');
console.log(sym1==sym2)
false
普通のStringだったらtrueですが、Symbolなら識別する文字としてfalseが出ます。
Discussion