CodeZineに寄稿いただいている執筆コミュニティ「WINGSプロジェクト」代表の山田祥寛さんのKindle本『速習 ECMAScript 2018』が7月23日に刊行されました。
本書では、ECMAScript 2015(ES2015)以降で大きく変化したECMAScriptの新機能を、6つのPartに分けて、サンプルコードとともに詳しく解説しています。本書掲載のサンプルは、ダウンロード可能。どんどん動かして試してみてください。
※本書は、旧版「速習 ECMAScript 6」をECMAScript 2018に対応し、最新の情報で改訂したものです。
担当編集者からのコメント
WINGSプロジェクト刊行のKindle電子書籍、7冊目です。
隙間時間にサクッと学べる手軽な本をコンセプトとした「速習シリーズ」。これまで「速習 webpack」「速習 Vue.js」「速習 TypeScript」「速習 ASP.NET Core」など、ラインナップを充実させてきましたが、おかげさまで、いずれもご好評いただいており、今回はその第6弾「速習 ECMAScript 2018」となります。
内容は、最新の2018に対応したECMAScriptの解説書で、旧版「速習 ECMAScript 6」を最新の情報で改訂したものです。
ECMAScript 2015(ES2015)以降で大きく変化したECMAScriptの新機能を、6つのPartに分けて、サンプルコードとともに詳しく解説しています。本書掲載のサンプルは、サポートページからダウンロード可能です。どんどん動かして試してみてください。
また本文内では、2016以降で導入された機能については、それぞれ[2016][2017][2018]とマークしています。
中身が気になる方のために、少しだけ覗いてみましょう。
ECMAScriptとは、標準化団体Ecma Internationalによって標準化されたJavaScriptの言語仕様。ブラウザー上で動作するJavaScriptは、基本的に、このECMAScriptの仕様をもとに実装されています。標準JavaScript=ECMAScriptと言っても良いでしょう。
...中略...
[Note]なぜ今、ES20XXなのか?
JavaScript界隈の進化は、ここ数年を見ても加速度を増しているからです。ES3からES5まで10年、ES5からES2015まで6年もの年月を要したのも、今は昔。2015以降はLive Standardでリアルタイムに新たな提案を取り込んでいます。ES20XXという呼称で見ても、毎年新たな仕様がリリースされているわけです。
また、ブラウザー側もほとんど間を置かずに、新しい機能をサポートしています。そもそもProposalsがStage-4になるには、最低でもふたつ以上の環境で機能が実装されていることが前提です。(たとえば)ES2018の機能はリリース時点で、既にChrome最新版で動作しています。
当然、フレームワーク/ライブラリ(ということは、ドキュメント)も、ES20XXを前提にしているものが増えています。新たな技術を学ぶ上で、ES20XX(最低でもES2015)の知識は不可欠なものになりつつあるのです。
特にES2015では、クラス構文をはじめとして、基本的な構文にさまざまな手が加えられ、ES5までのコードとは様変わりしている点も多く見受けられます。ふと周辺のコードを見渡してみたら「私の知ってるJavaScriptじゃない!」とならないためにも、少しずつでも新たな構文/仕様に慣れておくことは重要です。
短時間で読めますが、かなり濃い内容となっています。ぜひ、ご覧になってみてください。
一般読者からのコメント(aceさん)
速習シリーズ「速習 ECMAScript 6」がECMAScript 2018に対応し、最新の情報で改訂された本です。
速習シリーズ「速習 ECMAScript 6」を以前に読みましたが、今回の内容についても、「速習」とのタイトルどおり、一気に読み通せる程度の分量なので早い人なら1日で読みきれると思います。
本書にも記載されているとおり、既存のJavaScript(ECMAScript 5レベル)をある程度理解していれば、引っかかることなく容易に読みすすめることができます。
また、 ECMAScript 6について、理解している読者であれば、目次にある[2016]~[2018]の内容だけをかいつまんで読めば、1~2時間程度で読み切れると思います。
前回の内容と同様、環境を構築する手順についても丁寧に記載されていますので、これに従って環境をつくればすぐにサンプルコードを実行して試すことができます。
仕様の説明だけでなく、ECMAScript 5以前にあった問題がどのように改善されるかや、利用する際の注意点も記載されており、ページ数は少ないですが、内容が凝縮された印象を受けました。
※個人的には、ECMAScriptのバージョンが年(2018など)になった理由を本書籍で初めて知りました。
ECMAScript 6を含めアップデートされた内容について興味のある方や、時間がないのでポイントをすぐに確認したいという方にオススメです。ECMA Script 2018で実装する際は、リファレンスとして常に手元に置いておきたい1冊です。
仕様
- 書名:『速習 ECMAScript 2018』
- 著者:山田祥寛
- 出版社:WINGSプロジェクト
- 頁数:127ページ
- 定価:454円(+税)
- 色数:4色
- 刊行日:2018年7月23日
目次
Part1:はじめに
- 対象読者
- ECMAScriptとは?
- サンプルプログラムについて
Part2:基本構文
- ブロックスコープを有効にする - let命令
- 定数を宣言する - const命令
- 整数リテラルの表現力を改善する - 2進数/8進数リテラル
- Math.powを簡単に表現するべき乗演算子「**」[2016]
- 文字列リテラルへの変数/改行の埋め込みを可能にする - テンプレート文字列
- 新たなデータ型Symbolとは?
- 配列/オブジェクトから個々の要素を抽出する - 分割代入
- 配列を個々の変数に展開する - 展開演算子
- 配列など反復可能なオブジェクトを列挙する - for...of命令
Part3:関数
- 引数のデフォルト値を宣言する
- 可変長引数を利用する
- 関数リテラルをシンプルに記述する - アロー関数
- 引数リストの末尾のカンマを許容する[2017]
Part4:組み込みオブジェクト
- 非同期処理を簡便に処理する - Promiseオブジェクト
- 補足:非同期通信のための新たなメソッド「fetch」
- オブジェクトの挙動をカスタマイズする - Proxyオブジェクト
- コレクション関連のオブジェクトを標準で提供 - Map/Setなど
- Unicode対応の改善
- 表現力が向上したRegExpオブジェクト
- String/Array/Math/Objectなど組み込みオブジェクトのメソッドも拡充
Part5:オブジェクト指向構文
- オブジェクトリテラルをよりシンプルに表現する
- クラスを定義する - class命令
- 列挙可能なオブジェクトを定義する - イテレーター
- 列挙可能なオブジェクトをより簡単に実装する - ジェネレーター
- アプリを機能単位にまとめる - モジュール
Part6 :トランスコンパイラーBabel
- コマンド経由で変換する
- 簡易インタプリターを利用する
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です