読み終わった。JavaScript: The Definitive Guide, 7th Edition

とても良かった。2ヶ月くらいかけて読んだのかな。

www.oreilly.com

最新の情報だけじゃなくて、歴史的経緯から順を追って説明してくれてるので、ちょっと前のスタイルのコードも読めそうだし。どういう背景で新しい仕様が導入されたのかとかも納得だし。とても良かった。

↓ let, const, var の違いや、Destructuring Assignment が面白かったなー。

↓ ES2020 の Conditional Property Access や First Defined で、ほほーってなったし、 === は真面目に読んだ。

↓ for/of やオブジェクトリテラル。ES2018 の Spread Operator は普通にたくさん出てきそう。

↓ Sparse Array って普段は使わなさそうだなーとか、map() や includes() は使いそうだなーとか。Array-like オブジェクトかーとか。

↓ Function と this と Closure はなんとなくでしか捉えてなかったので学べて良かった。昔のやり方から始まる class の説明は分かりやすくて良かった。

↓ Module の歴史。Closure Base から Node を経て、ES6 の Module への流れも分かりやすかった。ES2020 の Dynamic Imports は Node の require() を置き換えるために必要そうだなとか。

↓ Set や Map と。Iterable と Generator Function。

↓ からの Promise と aync/await。面白い。

メタプログラミングと Symbol。

この後に Web Browser の章と Node.js の章をさらっと読んで、最後にツールの紹介があった。

### JavaScript に入門できたかな

これで、一旦 JavaScript に入門できたかな。

なんとなくコードは読めそうだし、それが古いのか新しいのかも分かりそう。それに、分からないコードがでてきても、調べることはできそう。

Node.js のコードは CommonJS と ES の間で難しそうだなぁと思いつつ。

### 良い流れだった

JSPrimer と Promise の本で基本をなぞったあとに、JavaScript: The Definitive Guide, 7th Edition を読んで知識を深める、という流れだったのだけど、これはとても良かった。もういちど JSPrimer と Promise の本 を読み直して、一旦 JS 入門は終わりにしようと思う。

jsprimer.net

azu.github.io

### 次は

Vue.js でも触ってみようかなぁ?