はじめに
こんにちは、aa_cryingです。 早いもので入社から1年半が経ちました。
kindle unlimitedとは
kindle unlimitedとは、Amazonが展開する、月額制の電子書籍読み放題サービスです。
なんと今なら30日間無料で様々な書籍・漫画が読めるので、JavaScriptの技術書籍を探してみました。
脱初心者のJavaScript力を底上げするための本
Amazonで「JavaScript 脱初心者」と検索すると検索結果の一番上に出てくる書籍です。
脱初心者のJavaScript力を底上げするための本/天田士郎
こちらの書籍では、1章は基本的なコーディングテクニック等が記載されていますが、
2章以降では無名関数・即時関数の使い方や、巻き上げ等脱初心者に必要な知識が説明されています。
コードとともに説明されているため、実際に動きを確かめながら進めることが出来ます。
私はJavaScript特有の「巻き上げ」という概念を知らず、この書籍を読んで初めて知りましたので、抜粋して紹介させていただきます。
「巻き上げ」とは
以下は「巻き上げ」が起こるコードの例になります。
var a = 'hoge'; var f = function() { console.log(a); var a = 'fuga'; console.log(a); } f();
この例では、一見すると1回目のconsole.log(a)では「hoge」が出力されそうですが、「undefined」になります。
JavaScriptでは、関数内のどの位置でもvar文を利用して変数の宣言ができます。
しかし、これらの変数は関数内のいかなる場所で宣言されたとしても「この関数の先頭で宣言された」とみなされます。
このため、以下の例と同じになります。
var a = 'hoge'; var f = function() { var a; console.log(a); a = 'fuga'; console.log(a); } f();
aは1回目のconsole.log(a)の時点では新たに宣言だけされており、代入までは行われません。
(巻き上げられるのは宣言部分のみ)
ですので、1回目のconsole.log(a)の時点では「undefined」となるのです。
このように、他のJavaScript特有の規則等についても例を交えてわかりやすく説明されており、脱初心者には非常に為になる書籍でした。
おわりに
今回はkindle unlimitedで無料で読めるJavaScriptの脱初心者本について紹介させていただきました。
- 技術書籍を読みたいけれど何から読んだらよいかわからない
- 本屋で探すのが面倒
という方は、kindle unlimitedで探してみるのもアリかもしれません。
他にも読んでみた書籍がありますので、そちらは次の機会に紹介させていただければと思います。