JavaScript

JavaScript 第5版

 JavaScript 第5版
David Flanagan
オライリー・ジャパン
2007-08-14
¥ 4200

学習メモ

頁+行章節項目日付

目次

訳者まえがき
はじめに

1章 JavaScriptの概要
 1.1 JavaScriptとは何か
  1.1.1 JavaScriptとJavaは同じものか
  1.1.2 JavaScriptは簡単か
 1.2 JavaScriptのさまざまなバージョン
 1.3 クライアントサイドJavaScript
  1.3.1 クライアントサイドJavaScriptの例
 1.4 クライアントサイドJavaScript以外のJavaScript
 1.5 JavaScriptの学習方法

第1部 コアJavaScript

2章 字句構造
 2.1 文字コード
 2.2 大文字と小文字
 2.3 空白スペースと改行
 2.4 セミコロン
 2.5 コメント
 2.6 リテラル
 2.7 識別子
 2.8 予約語

3章 データ型と値
 3.1 数値
  3.1.1 整数リテラル
  3.1.2 16進と8進の整数リテラル
  3.1.3 浮動小数点リテラル
  3.1.4 数値の操作
  3.1.5 数値変換
  3.1.6 特殊な数値
 3.2 文字列
  3.2.1 文字列リテラル
  3.2.2 文字列リテラルのエスケープシーケンス
  3.2.3 文字列の操作
  3.2.4 数値から文字列への変換
  3.2.5 文字列から数値への変換
 3.3 論理値
  3.3.1 論理値の型変換
 3.4 関数
  3.4.1 関数リテラル
 3.5 オブジェクト
  3.5.1 オブジェクトの生成
  3.5.2 オブジェクトリテラル
  3.5.3 オブジェクトの型変換
 3.6 配列
  3.6.1 配列の生成
  3.6.2 配列リテラル
 3.7 null値
 3.8 未定義(undefined)値
 3.9 Dateオブジェクト
 3.10 正規表現
 3.11 Errorオブジェクト
 3.12 型変換のまとめ
 3.13 基本データ型のラッパーオブジェクト
 3.14 オブジェクトから基本データ型への変換
 3.15 「値による」データ型操作と「参照による」データ型操作
  3.15.1 基本型と参照型
  3.15.2 文字列は「値による」のか「参照による」のか
  3.15.3 文字列の比較
  3.15.4 「値による」データ型の操作と「参照による」データ型操作のまとめ

4章 変数
 4.1 変数の型
 4.2 変数の宣言
  4.2.1 宣言の繰り返しと省略
 4.3 変数のスコープ
  4.3.1 ブロックレベルのスコープはない
  4.3.2 未定義と未代入
 4.4 基本型と参照型
 4.5 ガーベジコレクション
 4.6 プロパティと変数は違うのか
  4.6.1 グローバルオブジェクト
  4.6.2 ローカル変数はCallオブジェクトのプロパティ
  4.6.3 JavaScriptの実行コンテキスト
 4.7 変数のスコープの再検討

5章 式と演算子
 5.1 式
 5.2 演算子の概要
  5.2.1 オペランドの数
  5.2.2 オペランドの型
  5.2.3 演算子の優先順位
  5.2.4 演算子の結合性
 5.3 算術演算子
 5.4 等値演算子
  5.4.1 等値演算子(==)と同値演算子(===)
  5.4.2 不等演算子(!=)と非同値演算子(!==)
 5.5 関係演算子
  5.5.1 比較演算子
  5.5.2 in演算子
  5.5.3 instanceof演算子
 5.6 文字列演算子
 5.7 論理演算子
  5.7.1 論理積演算子(&&)
  5.7.2 論理和演算子(||)
  5.7.3 論理否定演算子(!)
 5.8 ビット演算子
 5.9 代入演算子
  5.9.1 算術演算を伴う代入演算子
 5.10 そのほかの演算子
  5.10.1 条件演算子(?:)
  5.10.2 typeof演算子
  5.10.3 オブジェクト生成演算子(new)
  5.10.4 delete演算子
  5.10.5 void演算子
  5.10.6 カンマ演算子
  5.10.7 配列とオブジェクトにアクセスする演算子
  5.10.8 関数呼び出し演算子

6章 文
 6.1 式文
 6.2 複合文
 6.3 if文
  6.3.1 if文の第1の書式
  6.3.2 if文の第2の書式
 6.4 else if文
 6.5 switch文
 6.6 while文
 6.7 do/while文
 6.8 for文
 6.9 for/in文
 6.10 ラベル文
 6.11 break文
 6.12 continue文
 6.13 var文
 6.14 function文
 6.15 return文
 6.16 throw文
 6.17 try/catch/finally文
 6.18 with文
 6.19 空文
 6.20 JavaScript文のまとめ

7章 オブジェクトと配列
 7.1 オブジェクトの生成
 7.2 オブジェクトのプロパティ
  7.2.1 オブジェクトプロパティの調査
  7.2.2 プロパティの存在確認
  7.2.3 プロパティの削除
 7.3 連想配列としてのオブジェクト
 7.4 Objectのプロパティとメソッド
  7.4.1 constructorプロパティ
  7.4.2 toString()メソッド
  7.4.3 toLocaleString()メソッド
  7.4.4 valueOf()メソッド
  7.4.5 hasOwnProperty()メソッド
  7.4.6 propertyIsEnumerable()メソッド
  7.4.7 isPrototypeOf()メソッド
 7.5 配列
 7.6 配列の要素の読み書き
  7.6.1 配列の要素の追加
  7.6.2 配列の要素の削除
  7.6.3 配列の長さ
  7.6.4 配列の要素の巡回
  7.6.5 配列の長さの変更
  7.6.6 多次元配列
 7.7 配列のメソッド
  7.7.1 join()メソッド
  7.7.2 reverse()メソッド
  7.7.3 sort()メソッド
  7.7.4 concat()メソッド
  7.7.5 slice()メソッド
  7.7.6 splice()メソッド
  7.7.7 push()メソッドとpop()メソッド
  7.7.8 unshift()メソッドとshift()メソッド
  7.7.9 toString()メソッドとtoLocaleString()メソッド
  7.7.10 JavaScript 1.6で追加されたメソッド
 7.8 配列のようなオブジェクト

8章 関数
 8.1 関数の定義と呼び出し
  8.1.1 入れ子型の関数
  8.1.2 関数リテラル
  8.1.3 関数の命名規則
 8.2 関数の引数
  8.2.1 省略可能な引数
  8.2.2 可変長の引数リスト(Argumentsオブジェクト)
  8.2.3 引数としてオブジェクトのプロパティを利用
  8.2.4 引数の型
 8.3 データとしての関数
 8.4 メソッドとしての関数
 8.5 コンストラクタ関数
 8.6 関数のプロパティとメソッド
  8.6.1 lengthプロパティ
  8.6.2 prototypeプロパティ
  8.6.3 自分専用の関数プロパティの定義
  8.6.4 apply()メソッドとcall()メソッド
 8.7 ユーティリティ関数
 8.8 関数のスコープとクロージャ
  8.8.1 静的なスコープ
  8.8.2 Callオブジェクト
  8.8.3 名前空間としてのCallオブジェクト
  8.8.4 クロージャとしての入れ子型の関数
 8.9 Function()コンストラクタ

9章 クラスとコンストラクタとプロトタイプ
 9.1 コンストラクタ
 9.2 プロトタイプと継承
  9.2.1 継承プロパティへのアクセス
  9.2.2 組み込み型の拡張
 9.3 JavaScriptの「クラス」
  9.3.1 インスタンスプロパティ
  9.3.2 インスタンスメソッド
  9.3.3 クラスプロパティ
  9.3.4 クラスメソッド
  9.3.5 Circleクラスの例
  9.3.6 複素数のコード例
  9.3.7 プライベートメンバ
 9.4 オブジェクト共通メソッド
  9.4.1 toString()メソッド
  9.4.2 valueOf()メソッド
  9.4.3 比較用のメソッド
 9.5 スーパークラスとサブクラス
  9.5.1 コンストラクタチェーン
  9.5.2 オーバーライドされたメソッドの呼び出し
 9.6 継承以外のクラス拡張方法
 9.7 オブジェクトクラスの判定
  9.7.1 instanceof演算子とコンストラクタ
  9.7.2 Object.toString()メソッドによる型判定
  9.7.3 ダックタイピング
 9.8 例:defineClass()ユーティリティメソッド

10章 モジュールと名前空間
 10.1 モジュールと名前空間の生成
  10.1.1 モジュールの可用性のチェック
  10.1.2 モジュールとしてのクラス
  10.1.3 モジュール初期化コード
 10.2 名前空間からのシンボルのインポート
  10.2.1 パブリックシンボルとプライベートシンボル
  10.2.2 プライベートな名前空間とスコープとしてのクロージャ
 10.3 モジュールユーティリティ

11章 正規表現パターンマッチング
 11.1 正規表現の定義
  11.1.1 リテラル文字
  11.1.2 文字クラス
  11.1.3 繰り返し
  11.1.4 選択、グループ化、参照
  11.1.5 一致位置の指定
  11.1.6 フラグ
  11.1.7 JavaScriptでサポートされないPerlの正規表現機能
 11.2 パターンマッチング用の文字列メソッド
 11.3 RegExpオブジェクト
  11.3.1 パターンマッチング用のRegExpメソッド
  11.3.2 RegExpインスタンスプロパティ

12章 Javaをスクリプトする
 12.1 JavaScriptの組み込み
  12.1.1 javax.scriptの型変換
  12.1.2 スクリプトのコンパイル
  12.1.3 JavaScriptの関数の呼び出し
  12.1.4 JavaScriptでのインタフェースの実装
 12.2 Javaをスクリプトする
  12.2.1 JavaPackageクラス
  12.2.2 JavaClassクラス
  12.2.3 パッケージとクラスのインポート
  12.2.4 JavaObjectクラス
  12.2.5 Javaメソッド
  12.2.6 JavaArrayクラス
  12.2.7 LiveConnectでのインタフェースの実装
  12.2.8 LiveConnectのデータ変換

第2部 クライアントサイドJavaScript

13章 Webブラウザに組み込まれたJavaScript
 13.1 Webブラウザ環境
  13.1.1 グローバル実行コンテキストとなるWindowオブジェクト
  13.1.2 クライアントサイドオブジェクトの階層構造とDOM
  13.1.3 イベント駆動型のプログラミングモデル
  13.1.4 WebにおけるJavaScriptの役割
  13.1.5 控えめなJavaScript
 13.2 HTMLドキュメントへのJavaScriptコードの埋め込み
  13.2.1 <script>タグ
  13.2.2 外部ファイルのスクリプト
  13.2.3 スクリプト言語の指定
  13.2.4 defer属性
  13.2.5 <noscript>タグ
  13.2.6 </script>タグ
  13.2.7 古いブラウザからスクリプトを見えないようにする
  13.2.8 <script>タグの非標準属性
 13.3 HTMLドキュメント内のイベントハンドラ
 13.4 URLへのJavaScriptの記述
  13.4.1 ブックマークレット
 13.5 JavaScriptプログラムの実行方法
  13.5.1 スクリプトの実行
  13.5.2 onloadイベントハンドラ
  13.5.3 イベントハンドラとJavaScript URL
  13.5.4 onunloadイベントハンドラ
  13.5.5 実行コンテキストとしてのWindowオブジェクト
  13.5.6 クライアントサイドJavaScriptのスレッドモデル
  13.5.7 ロード時のドキュメントの操作
 13.6 クライアントサイドJavaScriptの互換性
  13.6.1 非互換性の歴史
  13.6.2 「最近のブラウザ」の意味するもの
  13.6.3 機能テスト
  13.6.4 ブラウザテスト
  13.6.5 Internet Explorerの条件付きコメント
 13.7 アクセサビリティ
 13.8 JavaScriptのセキュリティ
  13.8.1 JavaScriptではできないこと
  13.8.2 同一出身ポリシー
  13.8.3 プラグインやActive Xコントロールの制御
  13.8.4 クロスサイトスクリプティング
  13.8.5 DoS攻撃
 13.9 そのほかのWeb関連の組み込みJavaScript

14章 ブラウザウィンドウの制御
 14.1 タイマー
 14.2 LocationオブジェクトとHistoryオブジェクト
  14.2.1 URLの解析
  14.2.2 新しいドキュメントのロード
  14.2.3 Historyオブジェクト
 14.3 ウィンドウ、画面、ブラウザ情報の取得
  14.3.1 ウィンドウのサイズと位置情報
  14.3.2 Screenオブジェクト
  14.3.3 Navigatorオブジェクト
 14.4 ウィンドウのオープンと制御
  14.4.1 ウィンドウのオープン
  14.4.2 ウィンドウのクローズ
  14.4.3 ウィンドウの移動とサイズの変更
  14.4.4 キーボードフォーカスとウィンドウ表示
  14.4.5 スクロール
  14.4.6 Windowオブジェクトのメソッドの使用例
 14.5 簡単なダイアログボックス
 14.6 ステータス行の制御
 14.7 エラー処理
 14.8 複数のウィンドウとフレーム
  14.8.1 フレーム間の関係
  14.8.2 ウィンドウ名とフレーム名
  14.8.3 相互作用するウィンドウでのJavaScriptの使用
 14.9 例:フレーム中のナビゲーションバー

15章 ドキュメントの制御
 15.1 ドキュメントコンテンツの動的な生成
 15.2 Documentオブジェクトのプロパティ
 15.3 レガシーDOM:Documentオブジェクトの配列プロパティ
  15.3.1 ドキュメントのオブジェクトへの名前付け
  15.3.2 Documentオブジェクトのイベントハンドラ
  15.3.3 レガシーDOMの例
 15.4 W3C DOMの概要
  15.4.1 ドキュメントをツリー構造として表現
  15.4.2 ノード
  15.4.3 DOM HTML API
  15.4.4 DOMレベルと機能
  15.4.5 DOM適合性
  15.4.6 プログラミング言語から独立したDOMインタフェース
 15.5 ドキュメントの探索
 15.6 ドキュメント中の要素の検索
 15.7 ドキュメントの変更
  15.7.1 属性の変更
  15.7.2 ドキュメントフラグメントの操作
 15.8 ドキュメントコンテンツの追加
  15.8.1 ノード作成用の便利なメソッド
  15.8.2 innerHTMLプロパティ
 15.9 例:目次の動的な生成
 15.10 選択されたテキストの読み出し
 15.11 IE 4 DOM
  15.11.1 ドキュメントの探索
  15.11.2 ドキュメント要素の検索
  15.11.3 ドキュメントの変更

16章 CSSとダイナミックHTML
 16.1 CSSの概要
  16.1.1 ドキュメントの要素へのスタイルルールの適用
  16.1.2 ドキュメントとスタイルシートの関連付け
  16.1.3 カスケード
  16.1.4 CSSのバージョン
  16.1.5 CSSの使用例
 16.2 DHTMLのためのCSS
  16.2.1 DHTMLの鍵となる絶対位置指定
  16.2.2 CSSによる位置指定の例:影付きテキスト
  16.2.3 要素の位置とサイズのチェック
  16.2.4 3次元座標:z-index
  16.2.5 要素の表示方法と可視性
  16.2.6 CSSボックスモデルと位置指定の詳細
  16.2.7 色と透明度
  16.2.8 部分表示:overflowとclip
  16.2.9 例:半透明のウィンドウを重ね合わせる
 16.3 インラインスタイルの制御
  16.3.1 JavaScriptでのCSS属性の命名規則
  16.3.2 スタイルプロパティの操作
  16.3.3 例:CSSツールチップ
  16.3.4 DHTMLアニメーション
 16.4 算出スタイルの制御
 16.5 CSSクラスの制御
 16.6 スタイルシートの制御
  16.6.1 スタイルシートの有効化と無効化
  16.6.2 スタイルシートオブジェクトとスタイルシートルール

17章 イベントとイベント処理
 17.1 基本的なイベント処理
  17.1.1 イベントとイベントタイプ
  17.1.2 属性としてのイベントハンドラ
  17.1.3 プロパティとしてのイベントハンドラ
  17.1.4 イベントハンドラの戻り値
  17.1.5 イベントハンドラとthisキーワード
  17.1.6 イベントハンドラのスコープ
 17.2 DOMレベル2の高度なイベント処理
  17.2.1 イベント伝播
  17.2.2 イベントハンドラの登録
  17.2.3 addEventListener()とthisキーワード
  17.2.4 オブジェクトのイベントハンドラとしての登録
  17.2.5 イベントモジュールとイベントタイプ
  17.2.6 イベントインタフェースとイベントの詳細
  17.2.7 イベントモデルの混在
 17.3 Internet Explorerのイベントモデル
  17.3.1 IEのEventオブジェクト
  17.3.2 グローバル変数としてのIEのEventオブジェクト
  17.3.3 IEでのイベントハンドラの登録
  17.3.4 IEでのイベントバブリング
  17.3.5 マウスイベントのキャプチャリング
  17.3.6 attachEvent()とthisキーワード
  17.3.7 イベントハンドラとメモリリーク
  17.3.8 例:IEでのイベントモデル互換モジュール
 17.4 マウスイベント
  17.4.1 マウス座標の変換
  17.4.2 例:ドキュメント要素のドラッグ
 17.5 キーイベント
  17.5.1 キーイベントの種類
  17.5.2 キーイベントの詳細
  17.5.3 キーボードからの入力のフィルタリング
  17.5.4 キーマップを使ったキーボードショートカット
 17.6 onloadイベント
 17.7 合成イベント

18章 フォームとフォーム要素
 18.1 Formオブジェクト
 18.2 フォーム要素の定義
 18.3 フォーム要素の制御
  18.3.1 フォームとフォーム要素の命名規則
  18.3.2 フォーム要素のプロパティ
  18.3.3 フォーム要素のイベントハンドラ
  18.3.4 プッシュボタン
  18.3.5 トグルボタン
  18.3.6 テキストフィールド
  18.3.7 Select要素とOption要素
  18.3.8 Hidden要素
  18.3.9 Fieldset要素
 18.4 フォームの検証例

19章 クッキーとクライアントサイドの永続性
 19.1 クッキーとは
 19.2 クッキーの登録
  19.2.1 クッキーの制限事項
 19.3 クッキーの読み出し
 19.4 クッキーの使用例
 19.5 クッキーの代替手段
  19.5.1 IEのuserData永続化機構
  19.5.2 FlashのSharedObject永続化機構
  19.5.3 例:永続化オブジェクト
 19.6 永続化データとセキュリティ

20章 HTTPの制御
 20.1 XMLHttpRequestの利用方法
  20.1.1 XMLHttpRequestオブジェクトの取得
  20.1.2 リクエストの送信
  20.1.3 同期レスポンスの取得
  20.1.4 非同期レスポンスの処理
  20.1.5 XMLHttpRequestのセキュリティ
 20.2 XMLHttpRequestの使用例とユーティリティ
  20.2.1 基本的なテキスト取得ユーティリティ
  20.2.2 ヘッダの取得
  20.2.3 HTTP POST
  20.2.4 HTML、XML、JSONエンコードされたレスポンス
  20.2.5 リクエストのタイムアウト
 20.3 Ajaxとダイナミックスクリプト
  20.3.1 Ajaxの例
  20.3.2 単一ページアプリケーション
  20.3.3 リモートスクリプティング
  20.3.4 Ajaxの注意事項
 20.4 <script>タグによるHTTP制御

21章 JavaScriptとXML
 21.1 XMLドキュメントの取得
  21.1.1 新しいドキュメントの生成
  21.1.2 ネットワークからのドキュメントのロード
  21.1.3 XMLテキストの解析
  21.1.4 データアイランドからのXMLドキュメントの取得
 21.2 DOM APIによるXMLの操作
  21.2.1 XML DOMとHTML DOM
  21.2.2 例:XMLデータからのHTMLテーブルの作成
 21.3 XSLTによるXMLの変換
 21.4 XPathによるXMLの問い合わせ
  21.4.1 XPathの例
  21.4.2 XPath式の評価
  21.4.3 W3C XPath APIの補足事項
 21.5 XMLのシリアライズ
 21.6 XMLデータによるHTMLテンプレートの展開
 21.7 XMLとWebサービス
 21.8 E4X:XML用のECMAScript拡張

22章 クライアントサイドグラフィックの制御
 22.1 スクリプトによる画像の制御
  22.1.1 画像とDOMレベル0
  22.1.2 画像ロールオーバー技術
  22.1.3 オフスクリーン画像とキャッシュ
  22.1.4 控えめな画像ロールオーバー
  22.1.5 アニメーション
  22.1.6 Imageオブジェクトのそのほかのプロパティ
 22.2 CSSによるグラフィック
  22.2.1 CSSによる棒グラフ
  22.2.2 CSSDrawingクラス
 22.3 SVG
 22.4 VML
 22.5 <canvas>中のグラフィック
 22.6 Flashによるグラフィック
 22.7 Javaによるグラフィック
  22.7.1 Javaによる円グラフ
  22.7.2 Javaを使ったクライアントサイドでの画像描画

23章 JavaアプレットとFlashムービーの制御
 23.1 アプレットの制御
 23.2 Javaプラグインの制御
 23.3 Javaを使ったスクリプト
  23.3.1 JSObjectを使用するアプレットのコンパイルと利用
  23.3.2 JavaからJavaScriptへのデータ変換
  23.3.3 共通DOM API
 23.4 Flashの制御
  23.4.1 Flashムービーの埋め込みとアクセス
  23.4.2 Flashプレーヤーの制御
  23.4.3 Flashムービーの制御
  23.4.4 FlashからのJavaScriptの呼び出し
  23.4.5 FlashからJavaScriptを呼び出し、Flashに戻す例
 23.5 Flash 8の制御

索引

出版社


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-09-17 (日) 09:48:07 (2403d)