速習 ECMAScript 2020
サポート終了
| 著者 | 山田祥寛 |
|---|---|
| 出版社 | WINGSプロジェクト |
| 価格 | 500円(税込) |
| 判型 | Kindle版・4色 |
| ページ数 | 143ページ |
| 発売日 | 2020年7月30日 |
| シリーズ | 速習(QUICK MASTER - WINGS) |
| 対象レベル | 初級 |
サクッと学べる。ECMAScript 2020の解説書。
これから習得必須のECMAScriptをいち早くマスターしよう。本書では、ECMAScript 2015(ES2015)以降で大きく変化したECMAScriptの新機能を、6つのPartに分けて、サンプルコードとともに詳しく解説しています。本書掲載のサンプルは、ダウンロード可能。どんどん動かして試してみてください。
※本書は、旧版「速習 ECMAScript 2019」をECMAScript 2020に対応し、最新の情報で改訂したものです。
更新履歴
更新情報はありません。
目次
- Part 1:はじめに
- ECMAScriptとは?
- ECMAScriptのバージョン
- ECMAScript仕様策定の流れ
- 最新のECMAScriptを利用するには?
- サンプルプログラムについて
- Part 2:基本構文
- ブロックスコープを有効にする - let命令
- 定数を宣言する - const命令
- 整数リテラルの表現力を改善する - 2進数/8進数リテラル
- 文字列リテラルへの変数/改行の埋め込みを可能にする - テンプレート文字列
- テンプレート文字列をアプリ仕様に加工する - タグ付きテンプレート文字列
- 不正なエスケープシーケンスの処理[2018]
- 新たなデータ型Symbolとは?
- シンボルの利用例
- 配列/オブジェクトから個々の要素を抽出する - 分割代入
- 分割代入の使い方
- ES20XXで便利になった演算子
- Math.powを簡単に表現するべき乗演算子「**」[2016]
- 配列を個々の変数に展開する - 展開演算子
- nullの時だけメンバーにアクセスする - 「?.」演算子[2020]
- null/undefinedに特化した条件演算子 - 「??」演算子[2020]
- 配列など反復可能なオブジェクトを列挙する - for...of命令
- try...catch命令での小さな改善[2019]
- すべてのJSON文字列をJavaScript文字列として認める[2019]
- Part 3:関数
- 引数のデフォルト値を宣言する
- 補足:必須パラメーターの表現
- 可変長引数を利用する
- 関数リテラルをシンプルに記述する - アロー関数
- アロー関数はthisを固定する(レキシカルなthis)
- 注意:オブジェクトリテラルを返す時
- 引数リストの末尾のカンマを許容する[2017]
- Part 4:組み込みオブジェクト
- 非同期処理を簡便に処理する - Promiseオブジェクト
- 非同期処理を連結する
- 非同期処理を同期処理風に記述する[2017]
- 複数の非同期処理を並行して実行する
- 複数の非同期処理のいずれかが完了したところで結果を返す
- 複数の非同期処理をとにかくすべて処理する[2020]
- 補足:非同期通信のための新たなメソッド「fetch」
- fetchメソッドの基本
- 通信の成否を確認する
- クエリ情報を送信する
- ポストデータを送信する
- ポストデータを送信する(JSON形式)
- オブジェクトの挙動をカスタマイズする - Proxyオブジェクト
- コレクション関連のオブジェクトを標準で提供 - Map/Setなど
- キー/値のセットを管理するマップ
- 一意な値の集合を管理するセット
- Unicode対応の改善
- for...of構文でもサロゲートペアを認識
- Unicodeエスケープシーケンスが拡張
- サロゲートペアからコードポイントを取得/設定も可能に
- JSON.stringifyで不正な形式のUnicode文字列を除外する[2019]
- 表現力が向上したRegExpオブジェクト
- Unicode文字列を処理するuフラグ
- 特定の位置でマッチングを試みるyフラグ
- 「.」が改行を含めたすべての文字にマッチするsフラグ[2018]
- ひらがな/カタカナなど特定の文字種を取得する「Unicodeプロパティエスケープ」[2018]
- 部分パターンを命名する「名前付きキャプチャグループ」[2018]
- 肯定後読みと否定後読み[2018]
- String/Array/Math/Objectなど組み込みオブジェクトのメソッドも拡充
- Stringオブジェクト
- Arrayオブジェクト
- Mathオブジェクト
- Numberオブジェクト
- BigIntオブジェクト[2020]
- Objectオブジェクト
- globalThis(グローバルオブジェクト)[2020]
- Part 5:オブジェクト指向構文
- オブジェクトリテラルをよりシンプルに表現する
- 変数を同名のプロパティに設定する
- メソッドを定義する
- プロパティ名を動的に生成できる
- クラスを定義する - class命令
- 匿名クラス(リテラル表現)も利用できる
- 静的メソッドを定義する - static修飾子
- getter/setterも利用できる
- 既存のクラスを継承する - extendsキーワード
- 列挙可能なオブジェクトを定義する - イテレーター
- イテレーターを実装したクラスの準備
- 列挙可能なオブジェクトをより簡単に実装する - ジェネレーター
- カウントダウンするジェネレーター
- 非同期処理を伴うイテレーターを定義する[2018]
- アプリを機能単位にまとめる - モジュール
- ブラウザー環境でモジュールを利用する
- モジュールの内容をまるごとインポートする
- デフォルトのエクスポートを宣言する
- モジュールを任意のタイミングで呼び出す[2020]
- Part 6:トランスコンパイラーBabel
- コマンド経由で変換する
- 簡易インタプリターを利用する
正誤表
現在、正誤情報はありません。
FAQ
現在、FAQはありません。
ダウンロード
お問い合わせ
書籍に関するご質問や誤りのご報告、ご意見・ご感想などをお寄せください。
お問い合わせの前にFAQ・正誤表をご確認ください。すでに掲載済みの内容については個別回答が難しい場合があります。