本書はJavaScriptが持つオブジェクト指向的な言語特性や、その特性を強力にサポートするECMAScript 5の機能を紹介し、それらの特性や機能を活かすプログラミングの方法、考え方、パターンについて、深くそして簡潔に解説する書籍です。本書を通じて、C++やJavaなど「クラスベースのオブジェクト指向言語」に慣れたプログラマはJavaScript特有のクラスを持たないオブジェクト指向プログラミングの世界への知識を得ることができ、JavaScriptプログラマはJavaScriptのオブジェクトに関する理解をさらに深めることができるでしょう。JavaScriptのオブジェクトを自由自在に扱い、より効果的なプログラミングを行いたいすべてのプログラマ必携の一冊です。
オブジェクト指向JavaScriptの原則
Nicholas C. Zakas 著、和田 祐一郎 訳
- TOPICS
- Web , JavaScript
- 発行年月日
- 2014年06月
- PRINT LENGTH
- 200
- ISBN
- 978-4-87311-681-5
- 原書
- The Principles of Object-Oriented JavaScript
- FORMAT
目次
まえがき 訳者まえがき はじめに ECMAScript 5について 1章 プリミティブ型と参照型 1.1 データ型とは何か? 1.2 プリミティブ型 1.2.1 プリミティブ型のデータ型を判定する 1.2.2 プリミティブ型のメソッド 1.3 参照型 1.3.1 オブジェクトの生成 1.3.2 オブジェクト参照の解除 1.3.3 プロパティの追加と削除 1.4 ビルトインのデータ型をインスタンス化 1.4.1 リテラル 1.4.2 関数リテラル 1.4.3 正規表現リテラル 1.5 プロパティへのアクセス 1.6 参照型のデータ型を判定する 1.7 配列の判定 1.8 プリミティブラッパー型 1.9 まとめ 2章 関数 2.1 関数宣言vs関数式 2.2 値としての関数 2.3 パラメータ 2.4 オーバーロード 2.5 オブジェクトメソッド 2.5.1 thisオブジェクト 2.5.2 thisの値を操作する 2.6 まとめ 3章 オブジェクト 3.1 プロパティの定義 3.2 プロパティの存在確認 3.3 プロパティの削除 3.4 列挙 3.5 データプロパティとアクセサプロパティ 3.6 プロパティの属性 3.6.1 共通属性([[Enumerable]]と[[Configurable]]) 3.6.2 データプロパティの属性([[Value]]と[[Writable]]) 3.6.3 アクセサプロパティの属性([[Get]]と[[Set]]) 3.6.4 複数のプロパティを一度に定義 3.6.5 プロパティ属性を取得 3.7 オブジェクトの変更防止 3.7.1 拡張防止 3.7.2 シール 3.7.3 フリーズ 3.8 まとめ 4章 コンストラクタとプロトタイプ 4.1 コンストラクタ 4.2 プロトタイプ 4.2.1 [[Prototype]]プロパティ 4.2.2 コンストラクタと一緒にプロトタイプを使用する 4.2.3 プロトタイプを変更 4.2.4 ビルトインオブジェクトのプロトタイプ 4.3 まとめ 5章 継承 5.1 プロトタイプチェーンとObject.prototype 5.1.1 Object.prototypeから継承するメソッド 5.1.2 Object.prototypeを変更するということ 5.2 オブジェクト継承 5.2.1 白紙オブジェクト 5.3 コンストラクタ継承 5.4 コンストラクタの借用 5.5 スーパータイプのメソッドにアクセス 5.6 まとめ 6章 オブジェクトのパターン 6.1 プライベートメンバと特権メンバ 6.1.1 モジュールパターン 6.1.2 コンストラクタのプライベートメンバ変数 6.2 Mixin 6.2.1 アクセサプロパティのMixinは要注意 6.3 スコープセーフなコンストラクタ 6.4 まとめ 付録A Strictモード A.1 Strictモードを有効にする A.2 Strictモードの動作と制限 A.2.1 グローバルオブジェクトへの暗黙的なプロパティ追加の禁止(var忘れ防止) A.2.2 thisの暗黙的な変換が発生しない A.2.3 暗黙的な操作失敗がエラーに A.2.4 argumentsに関する変更と制限 A.2.5 8進数リテラルの禁止 A.2.6 evalコードが独自のスコープで動作 A.2.7 ブロック内の関数文の禁止 A.2.8 withの禁止 索引