書籍詳細(モダンを学ぶ 速習 JavaScript)

モダンを学ぶ 速習 JavaScript 書影

モダンを学ぶ 速習 JavaScript

著者山田祥寛
出版社WINGSプロジェクト
価格500円(税込)
判型Kindle版・4色
ページ数272ページ
発売日2026年6月21日
シリーズ 速習(QUICK MASTER - WINGS)
対象レベル初級

イマドキのJavaScriptをサクッとマスター

本書のテーマは、モダンなJavaScriptの基盤であるECMAScriptです。最新のフロントエンド開発では、ReactやVue.jsなどのフレームワークを理解するうえでも、モダンなJavaScript構文の知識が欠かせません。
「JavaScriptは知っているはずなのに、最近のコードが読めない」「公式ドキュメントのサンプルが理解できない」――そんな悩みを解決し、最新のJavaScriptへ素早くキャッチアップすることが本書の目的です。ECMAScript 2015以降に追加された主要な機能を中心に、実践的なコード例を交えながら学べます。なお、JavaScriptの基本文法については既習であることを前提としています。
モダンを学ぶ 速習 JavaScript ロゴ

更新履歴

  • 正誤訂正:2026年7月12日 更新

目次

  • Part 1:はじめに
  • 1.1 ECMAScriptとは?
  • 1.1.1 ECMAScriptのバージョン
  • 1.1.2 ECMAScript仕様策定の流れ
  • 1.1.3 最新のECMAScriptを利用するには?
  • 1.2 サンプルプログラムについて
  • Part 2:モダンJavaScriptの常識構文
  • 2.1 モダンJavaScriptのもはや常識 let、const、varの使い分け
  • 2.1.1 let/varの違いを押さえる
  • 2.1.2 const vs. let
  • 2.2 リテラル表現でコードの可読性を改善する
  • 2.2.1 テキストの組み立てを簡単化する - テンプレート文字列
  • 2.2.2 応用:テンプレート文字列をアプリ仕様に加工する - タグ付きテンプレート文字列
  • 2.2.3 用途に応じて数値表現を使い分け - 直感的に書ける「n進数リテラル」
  • 2.2.4 オブジェクトの意図を短く伝える - オブジェクトリテラル
  • 2.2.5 使いどころに悩んでいませんか?モダンJavaScriptの新たなデータ型 - Symbol
  • 2.2.6 判りにくい!?シンボル利用のイメージを理解する
  • 2.3 複雑なデータ構造から必要な値を一瞬で抽出する「分割代入」
  • 2.3.1 分割代入の基本
  • 2.3.2 余りを一括で受け取る - 可変長データを扱いやすくする
  • 2.3.3 オブジェクトのプロパティを分割する
  • 2.3.4 オブジェクト分解のさまざまな例
  • 2.3.5 分割代入を実践活用しよう!
  • 2.4 もうヌルポも怖くない!バグの温床「null / undefined」をスマートにさばく
  • 2.4.1 ネストしたデータも安全に掘り進む「?.」演算子
  • 2.4.2 null / undefined に特化した初期値設定の決定版「??」演算子
  • Part 3:モダンなアプリ開発を支える関数の世界
  • 3.1 未定義の地雷をスマートに防ぐ - 引数の既定値
  • 3.1.1 既定値構文の基本
  • 3.1.2 既定値に渡せるのはリテラルだけでない!
  • 3.1.3 補足:既定値構文で必須パラメーターも表現できる
  • 3.2 引数の数を縛らない自由な関数を作る - 可変長引数
  • 3.2.1 可変長引数の関数を定義する
  • 3.2.2 スプレッド構文による引数の展開
  • 3.2.3 補足:サロゲートペアを含んだ文字列長を算出する
  • 3.3 ロジックを限界までシンプルに見せる - アロー関数
  • 3.3.1 アロー関数の基本
  • 3.3.2 応用:アロー関数はthisを固定する
  • Part 4:値の集合(コレクション)を使い分ける
  • 4.1 伝統的なArrayもモダンJavaScriptでは大進化
  • 4.1.1 「高階メソッド」が、モダン開発の主役に
  • 4.1.2 用途に合わせて配列を生成する
  • 4.1.3 トレンドは非破壊的メソッド[2023]
  • 4.2 専用の連想配列オブジェクト「Map」
  • 4.2.1 Mapを利用する意味とは?
  • 4.2.2 マップの基本操作
  • 4.2.3 キー比較の際の注意点
  • 4.2.4 オブジェクト配列をグループ化する - groupByメソッド[2024]
  • 4.2.5 キーが存在する場合は取得、さもなければ値を挿入する - getOrInsertメソッド[2026]
  • 4.3 一意なデータを安全に扱う - Setオブジェクト
  • 4.3.1 Setの基本
  • 4.3.2 セットが集合として利用できるようになった - 集合演算メソッド[2025]
  • 4.3.3 セット同士の包含関係を確認する
  • Part 5:日付処理のノウハウをアップデートする - Temporal API[2027]
  • 5.1 Temporal APIの基本
  • 5.2 日付/時刻オブジェクトを生成する
  • 5.2.1 現在の日付/時刻から生成する
  • 5.2.2 指定された年月日、時分秒から生成する
  • 5.2.3 日付/時刻文字列から変換する
  • 5.2.4 補足:不正な日付/時刻が渡された場合の対処方法
  • 5.2.5 Unixタイムスタンプから生成する
  • 5.2.6 他のオブジェクトから変換する
  • 5.2.7 Date⇔Temporal APIを相互変換する
  • 5.3 日付/時刻を整形する
  • 5.3.1 オブジェクトを文字列化する - toStringメソッド
  • 5.3.2 文字列への整形ルールを設定する――標準スタイル
  • 5.3.3 文字列への整形ルールを設定する――カスタマイズ
  • 5.3.4 範囲のある日付・時刻値を整形する
  • 5.4 日付・時刻要素を取得/設定する
  • 5.4.1 日付・時刻要素を取得する
  • 5.5 日付時刻値を演算する
  • 5.5.1 日付時刻を加算/減算する
  • 5.5.2 日付時刻値を丸める
  • 5.5.3 日付同士の差分を取得する
  • 5.5.4 日付・時刻値を比較する
  • Part 6:Temporal API、配列だけじゃない!モダンJavaScriptで進化したオブジェクトたち
  • 6.1 入力値の検証からクレンジングまで、一歩進んだ文字列操作を叶えるRegExp
  • 6.1.1 ひらがな/カタカナなど特定の文字種を取得する「Unicodeプロパティエスケープ」
  • 6.1.2 部分パターンを命名する「名前付きキャプチャグループ」
  • 6.1.3 肯定後読みと否定後読み
  • 6.1.4 正規表現の一部に修飾子を適用する[2025]
  • 6.1.5 正規表現で文字列を全検索する
  • 6.2 メタプログラミングから巨大数値の計算まで、JavaScriptの限界を超える「4つの隠れた主役」
  • 6.2.1 オブジェクトの挙動を外側からハックする - Proxyオブジェクト
  • 6.2.2 桁あふれの恐怖から解放される - BigIntオブジェクト
  • 6.2.3 かゆいところに手が届くようになったJSONオブジェクト
  • 6.2.4 Universal JavaScriptを推し進めるグローバルオブジェクト - globalThis
  • Part 7:非同期処理 — フリーズしない快適なUIのしくみ
  • 7.1 非同期処理の基盤を担うPromiseオブジェクト
  • 7.1.1 レガシーなコールバック地獄
  • 7.1.2 Promiseの基本
  • 7.1.3 非同期処理を連結する
  • 7.1.4 非同期処理を完全に「同期処理」の見た目に変える - async/await構文
  • 7.2 Promiseの進化を追う
  • 7.2.1 複数の非同期処理を並行して実行する
  • 7.2.2 外部からresolve/rejectできる非同期処理 - withResolversメソッド[2024]
  • 7.2.3 同期/非同期関数をすべてPromiseとして扱う - tryメソッド[2025]
  • 7.3 非同期通信を実装する - fetchメソッド
  • 7.3.1 fetchの基本
  • 7.3.2 通信の成否を判定する
  • 7.3.3 async/awaitで書き換えてみる
  • Part 8:劇的に美しくなったオブジェクト指向の「新常識」 - クラス構文
  • 8.1 クラスを定義する - class命令
  • 8.1.1 クラスに属する情報を管理する - プロパティ構文
  • 8.1.2 静的メンバーを定義する - static修飾子
  • 8.1.3 プライベートメンバーの実装
  • 8.1.4 ゲッター/セッターによるプロパティの開示
  • 8.1.5 既存のクラスを継承する - extendsキーワード
  • 8.1.6 スーパークラスの機能を引用する - superキーワード
  • 8.2 アプリを機能単位にまとめる - モジュール
  • 8.2.1 モジュールを定義する
  • 8.2.2 モジュールを利用する(JavaScript)
  • 8.2.3 モジュールを利用する(HTML)
  • 8.2.4 知っておきたい!import/export命令のさまざまな記法
  • 8.2.5 モジュールを任意のタイミングで呼び出す - 動的インポート
  • 8.2.6 JavaScript以外のデータをインポートする[2025]
  • Part 9:コレクションを一列にならす共通規格 - イテレーター
  • 9.1 イテレーターとは「次へ、次へ」とデータをめくる共通のルール
  • 9.1.1 イテレーターの心臓部「next」
  • 9.1.2 なぜイテレーターという概念を知る必要があるのか?
  • 9.2 自作クラスをfor...ofに対応させる実装方法
  • 9.2.1 イテレーター実装の基本
  • 9.2.2 イテレーターをよりシンプルに生成する - ジェネレーター
  • 9.2.3 例:カウントダウンするジェネレーター
  • 9.2.4 自作クラスのイテレーターをジェネレーターで書き換える
  • 9.2.5 非同期処理を伴うイテレーターを定義する
  • 9.2.6 イテレーターの操作をより高度に簡単に - Iterator Helpers[2025]
  • 9.2.7 Iterator Helpersで無限ジェネレーターも処理できる
  • 9.2.8 イテレーターを結合する - concatメソッド[2026]

正誤表

該当頁 該当箇所 修正刷
訂正箇所 訂正事項 更新日
p.- 1.1.1項 ECMAScriptのバージョン   表:「ECMAScriptのバージョン」  バージョン2023~2026の公開日 -
2022年6月 (4か所) 2023年6月
2024年6月
2025年6月
2026年6月
2026/07/12 New

FAQ

現在、FAQはありません。

お問い合わせ

書籍に関するご質問や誤りのご報告、ご意見・ご感想などをお寄せください。

Powered by メールフォーム 『オレンジフォーム』