第 1 章 ゼロから始める
1.1 JavaScript を選択する理由?
1.1.1 ユーザー設(shè)定 - B/S モード
1.1.2 JavaScript を使用する場(chǎng)合
1.1.3 JavaScript に関するいくつかの誤解
1.1.3.1 JavaScript と Java の関係
1.1.3.2 C の Lisp
1.1.3.3 JavaScript について考える
1.1.3.4 JavaScript はアマチュア向けに設(shè)計(jì)されていますか?
1.1.3.5 JavaScript はオブジェクト指向ですか
1.1.3.6 その他の誤解
1.1.4 警戒してください!スクリプトの誘惑
1.1.5 シンプルな外観の下に隠された複雑さ
1.1.6 混亂を招く選択 - おまけか、タイムリーな支援か 第 1 部 はじめに
第 1 章 ゼロから始める
1.1 JavaScript を選択する理由?
1.1.1 ユーザー設(shè)定 - B/S モード
1.1.2 JavaScript を使用する場(chǎng)合
1.1.3 JavaScript に関するいくつかの誤解
1.1.3.1 JavaScript と Java の関係
1.1.3.2 C の Lisp
1.1.3.3 JavaScript について考える
1.1.3.4 JavaScript はアマチュア向けに設(shè)計(jì)されていますか?
1.1.3.5 JavaScript はオブジェクト指向ですか
1.1.3.6 その他の誤解
1.1.4 警戒してください!スクリプトの誘惑
1.1.5 シンプルな外観の下に隠された複雑さ
1.1.6 迷った選択 -- おまけか、時(shí)宜を得た支援か
1.1.7 質(zhì)問に戻る
1.2 JavaScriptの適用範(fàn)囲
1.2.1 クライアントサイドの JavaScript
1.2.2 サーバーサイド JavaScript
1.2.3 他の環(huán)境での JavaScript
1.3 JavaScript のバージョン
1.3.1 ブラウザの JavaScript バージョン
1.3.2 その他のバージョン
1.4 注目に値するいくつかの機(jī)能
1.4.1 ちょっとしたトリック -- 魔法の魔法のコード
1.4.2 クライアントへのサービス -- 古典的な Hello World!別の JavaScript 実裝
1.4.3 データ対話 -- JavaScript の強(qiáng)力な機(jī)能
1.4.4 JavaScript の明らかなタブーとそれを突破する方法
1.5 セキュリティと実行効率
1.5.1 データ セキュリティ -- 永遠(yuǎn)にデリケートなトピック
1.5.2 実戦!攻撃と防御
1.5.3 不注意は禁物 - 常にパフォーマンスに注意を払う
1.6 例 -- JavaScript で書かれた計(jì)算機(jī)
1.6.1 要件分析から始める -- 計(jì)算機(jī)とは何ですか?
1.6.2 システム設(shè)計(jì) - 計(jì)算機(jī)をどのように実裝するか?
1.6.3 システム実裝 -- 計(jì)算機(jī)の最終実裝
1.6.4 継続的な改善 - 反復(fù)的なソフトウェア開発プロセス
1.7 JavaScript の學(xué)習(xí)と使用に関するいくつかの提案
1.7.1 プログラマーのように考える - プログラマーの 4 つの領(lǐng)域
1.7.2 コードを大切にする
1.7.3 環(huán)境
でのデバッグ方法を?qū)Wぶ 1.7.4 小さな欠陥に注意してください
1.7.5 練習(xí)前に考える - 安易にコードを書かない
1.7.6 常に過去を振り返ってください - 賢者でも未來を完全に予測(cè)することはできません
1.8 この本の殘りの部分について
第 2 章 ブラウザの JavaScript
2.1 Web ページに埋め込まれた実行可能コンテンツ
2.1.1 JavaScript コードをロードする場(chǎng)所
2.1.2 コード
のScriptタグについて 2.1.3 コードはいつ実行されますか - 異なる実行期間の JavaScript コード
2.1.4 借用主義 -- 外部 JavaScript ファイルの導(dǎo)入
2.2 楽しい特殊効果
2.2.1 生命は動(dòng)きにあります -- DHTML の効果
2.2.2 スタイルを変更する - CSS の力
2.2.3 JavaScript を使用した DOM の操作 -- ドラッグ可能なウィンドウの例
2.3 JavaScript を使用してユーザーと対話する
2.3.1 ポップアップ ヘルプと進(jìn)行狀況バーを作成する
2.3.2 間違った入力
2.4 スクリプトトラップの回避
2.4.1 現(xiàn)実は必ずしも完璧ではありません
2.4.2 目に見えるものを完全に信じないでください
2.5 概要
第3章 開発環(huán)境とデバッグ方法
3.1 スクリプトの作成には何を使用できますか -- JavaScript の作成に適したテキスト エディタ
3.2 ブラウザからのサポート
3.2.1 主流のブラウザ
3.2.2 非主流ブラウザ
3.3 統(tǒng)合開発環(huán)境
3.3.1 統(tǒng)合開発環(huán)境とは
3.3.2 統(tǒng)合開発環(huán)境は必要ですか
3.3.3 JavaScriptに適した統(tǒng)合開発環(huán)境
3.4 デバッグ ツール -- 開発効率を向上させる強(qiáng)力なツール
3.4.1 デバッグとは
3.4.2 オリジナルのデバッグ方法 - 出力ステートメント、「リフレクション」メカニズム、およびデバッグ オブジェクトを使用したデバッグ
3.4.3 JavaScript に適したデバッグ ツール
3.5 コードとコールスタックの検索
3.5.1 ステップバイステップ -- 単一ステップとブレークポイント
3.5.2 モニターメモリ
3.5.3 問題の原因を追跡します -- コールスタックを表示します
3.5.4 問題が発生しました -- コードをトレースできないのはなぜですか
3.6 ブラウザによる例外
のキャッチ 3.6.1 例外処理メカニズム - try/catch/finally パターンの例
3.6.2 例外の種類
3.6.3 例外を「食べる」必要がある場(chǎng)合
3.7 概要
パート 2 JavaScript コア
第 4 章 言語(yǔ)構(gòu)造
4.1 JavaScript の基本文法
4.1.1 文字セット
4.1.2 大文字と小文字の區(qū)別
4.1.3 區(qū)切り文字
4.1.4 単語(yǔ)、文、段落
4.1.5 セミコロン
4.1.6
をマークする 4.1.7 コメント
4.1.8 予約語(yǔ)
4.2 定數(shù)と変數(shù)
4.2.1 定數(shù)と変數(shù)
4.2.2 変數(shù)識(shí)別子
4.2.3 変數(shù)の型
4.2.4 変數(shù)の宣言
4.2.5 変數(shù)の範(fàn)囲
4.3 式と演算子
4.3.1 式
4.3.2 オペレーターの概要
4.3.3 算術(shù)演算子
4.3.4 関係演算子
4.3.5 論理演算子
4.3.6 ビット演算子
4.3.7 代入演算子
4.3.8 その他の演算子
4.3.8.1 條件演算子
4.3.8.2 カンマ演算子
4.3.8.3 オブジェクト演算子
4.3.8.4 型演算子
4.3.8.5 void 演算子
4.3.8.6 関數(shù)呼び出し演算子
4.4 制御ステートメント
4.4.1 式ステートメント
4.4.2 ステートメントブロック
4.4.3 條件文
4.4.4 ループ文
4.4.5 ジャンプ文
4.4.6 例外処理ステートメント
4.4.7 その他のステートメント
4.4.7.1 var ステートメント
4.4.7.2 関數(shù)ステートメント
4.4.7.3 ステートメント
を使用する 4.4.7.4 空のステートメント
4.5 概要
第 5 章 データ型
5.1 基本的なデータ型
5.1.1 値
5.1.2 文字列 -- 文字列関連の操作の例
5.1.3 ブール値
5.2 配列とオブジェクト
5.2.1 配列
5.2.2 オブジェクト -- コンストラクターの例
5.3 関數(shù)の種類 -- 関數(shù)とクロージャの例
5.4 マジカル null と未定義
5.4.1 ヌル
5.4.2 未定義 -- 固有の型
5.5 正規(guī)表現(xiàn)
5.5.1 正規(guī)表現(xiàn)定數(shù)
5.5.2 正規(guī)表現(xiàn)オブジェクト
5.6 値の型と參照型
5.6.1 値と値參照とは
5.6.2 値の使用と參照の使用
5.6.3 値と參照の間の変換: ボックス化とアンボックス化
5.7 型の識(shí)別と型変換
5.7.1 実行時(shí)の型認(rèn)識(shí) -- 実行中の型認(rèn)識(shí)の 2 つの例
5.7.2 型と例の自動(dòng)変換
5.7.3 強(qiáng)制的な型変換とその例
5.7.4 高度な使用法 -- カスタム型変換の例
5.8 數(shù)値トラップに注意してください
5.8.1 混亂 -- 浮動(dòng)小數(shù)點(diǎn)數(shù)の精度の問題
5.8.2 エラーの修正と例
5.9 まとめ
第 6 章 機(jī)能
6.1 関數(shù)定義と関數(shù)呼び出し
6.1.1 関數(shù)定義
6.1.1.1 宣言的な関數(shù)定義と関數(shù)式とその例
6.1.1.2 JavaScript 関數(shù)の秘密 - マジック コード
6.1.2 関數(shù)呼び出し
6.2 関數(shù)パラメータ
6.2.1 正式參加者の実際のパラメータ
6.2.2 引數(shù)オブジェクト
6.2.2.1 Arguments オブジェクトを使用して仮パラメータを検出する例
6.2.2.2 Arguments オブジェクトを使用して任意の數(shù)のパラメータを受け取る例
6.2.2.3 Arguments オブジェクトを使用して関數(shù)のオーバーロードをシミュレートする例
6.2.3 パラメータの型のマッチング -- 引數(shù)を使用して関數(shù)のオーバーロード メカニズムを?qū)g裝する例
6.3 関數(shù)の呼び出し元と所有者
6.3.1 関數(shù)
の呼び出し元 6.3.2 関數(shù)の所有者 -- 関數(shù)の所有者を指定する例
6.3.3 動(dòng)的呼び出し - 外國(guó)の所有者
6.4 関數(shù)の定數(shù)とクロージャ
6.4.1 無名関數(shù)
6.4.2 関數(shù)リファレンス
6.4.3 関數(shù)パラメータと関數(shù)戻り値とその例
6.4.4 高度な使用法 -- ローカル ドメインとしての閉鎖と評(píng)価の遅延
6.5 高度な抽象化 -- 関數(shù)タイプと関數(shù)テンプレート
6.5.1 関數(shù)の動(dòng)的作成 -- Function を使用して Lambda 演算子
を?qū)g裝する例 6.5.2 パターン -- ファンクション ファクトリとそのインスタンス
6.6 概要
第 7 章 オブジェクト
7.1 オブジェクトとは
7.2 オブジェクトのプロパティとメソッド
7.2.1 オブジェクトの組み込みプロパティ
7.2.2 オブジェクトへの屬性の追加と削除
7.2.3 リフレクション メカニズム -- 列挙オブジェクトのプロパティ
7.3 オブジェクトの構(gòu)築
7.3.1 コンストラクター -- 倍精度浮動(dòng)小數(shù)點(diǎn)數(shù)ラッパー クラスの例
7.3.2 デフォルト構(gòu)築とコピー構(gòu)築
7.3.3 オブジェクト定數(shù)
7.4 オブジェクトの破壊とストレージユニットのリサイクル
7.5 JavaScript の組み込みオブジェクト
7.5.1 數(shù)學(xué)オブジェクト
7.5.2 日付オブジェクト -- 単純なカレンダーの作成
7.5.3 エラーオブジェクト
7.5.4 その他の組み込みオブジェクト
7.5.5 特別なオブジェクト -- グローバル オブジェクトと呼び出しオブジェクト
7.6 概要
第 8 章 コレクション
8.1 配列と配列要素
8.1.1 配列の構(gòu)築
8.1.2 配列定數(shù)
8.1.3 配列要素
8.2 配列オブジェクトとメソッド
8.2.1 要素の検索
8.2.2 要素の追加と削除
8.2.3 集合演算と例
8.2.3.1 join() メソッド
8.2.3.2 reverse() メソッド
8.2.3.3 sort() メソッド
8.2.3.4 concat() メソッド
8.2.3.5 スライス()メソッド
8.2.3.6 splice() メソッド
8.2.3.7 toSgring() メソッドと toLocaleString() メソッド
8.3 ハッシュテーブル
8.3.1 ハッシュテーブルとは
8.3.2 ハッシュテーブルの構(gòu)築
8.3.3 単純な HashTable 型の実裝
8.4 高度な使用法 - セットオペレーションとクロージャ
8.5 概要
第9章 文字列
9.1 文字列の構(gòu)築
9.1.1 文字列定數(shù)
9.1.2 エスケープシーケンス
9.1.3 文字列コンストラクター
9.2 文字列の使用
9.2.1 文字列の比較
9.2.2 部分文字列の抽出と取得
9.2.3 文字列の連結(jié)と分割
9.2.4 文字列のパターンマッチング -- 文字列フォーマット検証の例
9.2.5 その他の方法
9.3 文字列と文字配列
9.4 文字列とテキストの処理 -- JavaScript 棋譜リーダー (1)
9.4.1 要件分析 -- チェス レコードとチェス レコード リーダーとは
9.4.2 システム設(shè)計(jì) -- チェスの記録とチェス盤データの文字列記述
9.4.3 システム実裝 - チェスの記録の解析と処理
9.4.4 完全なチェス記録リーダー
9.5 概要
第 10 章 正規(guī)表現(xiàn)
10.1 正規(guī)表現(xiàn)
とは 10.1.1 正規(guī)表現(xiàn)
の概念 10.1.2 JavaScript の正規(guī)表現(xiàn)
10.2 正規(guī)表現(xiàn)のルール
10.2.1 リテラル文字
10.2.2 文字クラスとブール演算
10.2.3
を繰り返す 10.2.4 選択、グループ化、參照
10.2.5 一致位置の指定
10.2.6 フラグ - 高度なパターン マッチングのルール
10.3 パターンマッチング
10.3.1 パターンマッチングの文字列メソッドと例
10.3.2 パターンマッチングのための RegExp メソッド
10.3.2.1 exec()メソッドを使用してID番號(hào)
から誕生日を取得する例 10.3.2.2 test() メソッドを使用して文字列
を走査する例 10.4 オブジェクトの正規(guī)表現(xiàn)パッケージ化について
10.4.1 RegExp オブジェクト - 正規(guī)表現(xiàn)を使用した全文検索の実裝
10.4.2 RegExp
のインスタンス プロパティ 10.5 強(qiáng)力な正規(guī)表現(xiàn)
10.5.1 正規(guī)表現(xiàn)の一部の分析
10.5.2 例 -- 強(qiáng)力なオンライン エディタ
10.5.3 新しい文法の構(gòu)築 - JSVM
での JSVM2 パーサーの実裝例 10.6 高度な使用法
10.7 正規(guī)表現(xiàn)を使用したテキストの処理
10.7.1 価格計(jì)算式エディタの作成
10.7.1.1 要件分析 -- 価格計(jì)算式エディタとは
10.7.1.2 システム実裝 - 価格計(jì)算式エディタの実裝
10.7.2 同期スクロール歌詞プレーヤーの作成
10.7.2.1 要件分析 -- 同期スクロール歌詞プレーヤーとは
10.7.2.2 システム設(shè)計(jì)と実裝 -- LRC 歌詞の処理
10.8 概要
パート 3 ブラウザと DOM
第 11 章 ブラウザ オブジェクト
11.1 ウィンドウ オブジェクト -- 最も基本的なブラウザ オブジェクト
11.1.1 ウィンドウオブジェクトの概要
11.1.2 Window オブジェクトのライフサイクル
11.1.3 Window オブジェクト
のプロパティとメソッド 11.1.4 マルチウィンドウアプリケーションの例
11.2 Document オブジェクト - ブラウザ ウィンドウのドキュメントのコンテンツを表します
11.2.1 ドキュメントオブジェクトの概要
11.2.2 動(dòng)的に生成されたドキュメント
11.2.3 Documentオブジェクトの基本情報(bào)
11.2.4 Document オブジェクト
の外観プロパティ 11.2.5 ドキュメントサブオブジェクトインターフェイス
11.2.5.1 Anchors オブジェクトの走査例
11.2.5.2 逆さまの畫像の例
11.3 ダイアログボックスとステータスバー
11.3.1 単純なダイアログ ボックスの作成
11.3.2 他のタイプのダイアログ ボックス
11.3.2.1 ダイアログ ボックスのシミュレーション -- ウィンドウ ダイアログ ボックスとブロックされたダイアログ ボックスの作成例
11.3.2.2 showModalDialog および showModelessDialog -- W3C または ECMAScrip 標(biāo)準(zhǔn)ではありません
11.3.3 ステータスバー
11.4 フレームワーク -- 上部 Window オブジェクト
11.4.1 マルチフレームワークアプリケーション
11.4.2 フレームワーク間の関係
11.4.3 フレームワークの命名
11.4.4 サブフレーム內(nèi)の JavaScript
11.4.5 フレームワークの適用 - マルチタブ表示
11.4.5.1 タブとは
11.4.5.2 タブの実裝 -- タブを含むページの作成
11.5 フォームとフォームオブジェクト
11.5.1 フォームオブジェクトとその例
11.5.2 フォーム要素の定義
11.5.3 クライアントフォームの検証と例
11.5.4 ユニバーサルクライアントフォーム検証コンポーネントの作成
11.6 その他の組み込みオブジェクト
11.6.1 Navigator オブジェクト -- 全體的なブラウザ情報(bào)を表す
11.6.2 Screen オブジェクト -- ディスプレイの解像度と使用可能な色の數(shù)に関する情報(bào)を提供します
11.6.3 Location オブジェクト - 現(xiàn)在のウィンドウに表示されているドキュメントの URL を表します
11.6.4 履歴オブジェクト -- 興味深いオブジェクト
11.7 概要
第 12 章 ドキュメントオブジェクトモデル
12.1 DOM とは
12.1.1 ドキュメントをツリーとして表現(xiàn)する
12.1.2 ツリーノード
12.1.3 DOM オブジェクトの共通プロパティとメソッド
12.1.4 HTML 構(gòu)造と DOM オブジェクトの関係 -- JavaScript を使用して DOM を通じて HTML ドキュメントを操作する
12.2 DOM とブラウザの実裝
12.2.1 DOM HTML API について
12.2.2 DOM のレベルと特徴
12.2.3 DOM の一貫性
12.2.4 相違點(diǎn) -- ブラウザ DOM 方言
12.3 「ボックス」のセット -- DOM 要素
12.3.1 ネストされた「ボックス」
12.3.2 「箱」と「箱」の中身の分類
12.4 ノードの作成と削除
12.4.1 新しいノードを構(gòu)築する
12.4.2 フラット展開 - 文書要素を通じて直接作成
12.4.3 スペースの再利用 -- 未使用のノードの削除
12.5 DOM ノードへのアクセスと操作
12.5.1 各ボックスを開く -- ノードをトラバースする
12.5.2 上下関係を明確にする - 父、息子、兄弟
12.5.3 特定のノードを検索する方法
12.5.4 クローンノード -- cloneNode() を使用してテーブルをコピーする例
12.5.5 モバイルノードとその例
12.5.6 新しい行の追加と並べ替えに関するヒント
12.6 データの読み取りと書き込み - 屬性の追加、変更、削除
12.7 外観と動(dòng)作
12.7.1 DOM スタイル屬性
12.7.2 DOM 要素の表示と非表示を制御する
12.7.3 色とサイズの変更 -- シンプルで興味深い例
12.7.4 位置の変更 -- 円の周りを回転するテキストの作成
12.7.5 コントロールの編集とその例
12.7.6 スタイルの変更とその例
12.7.7 動(dòng)作の変更
12.8 XML DOM
12.8.1 XML DOM とは
12.8.2 XML DOM の使用方法 -- XML を使用して、複數(shù)レベルの関連ドロップダウン選択ボックスを?qū)g裝する例
12.9 概要
第 13 章 イベント処理
13.1 イベントとは
13.1.1 メッセージとイベントの応答
13.1.2 ブラウザのイベント駆動(dòng)メカニズム
13.2 基本的なイベント処理
13.2.1 イベントとイベントの種類
13.2.2 イベントのバインディング
13.2.3 イベント処理関數(shù)の直接呼び出し
13.2.4 イベント処理関數(shù)の戻り値
13.2.5 パラメータを含むイベント応答と例
13.2.6 「この」キーワード
13.3 標(biāo)準(zhǔn)イベントモデル
13.3.1 バブルとキャプチャ -- ブラウザ イベントの伝播
13.3.2 イベント処理関數(shù)の登録
13.3.3 オブジェクトをイベント ハンドラとして登録する
13.3.4 イベントモジュールとイベントタイプ
13.3.5 イベントインターフェースについて
13.3.5.1 イベントインターフェイス
のプロパティとメソッド 13.3.5.2 UIEvent インターフェイスのプロパティ
13.3.5.3 MouseEvent インターフェースのプロパティ
13.3.5.4 MutationEvent インターフェイス
13.3.6 混合イベントモデル
13.3.7 合成イベント
13.4 ブラウザイベント処理モデルの実裝
13.4.1 Internet Explorer イベント モデル
13.4.1.1 IEイベント登録について
13.4.1.2 IE イベントオブジェクト
のプロパティ 13.4.1.3 IE
でのイベントのバブリング 13.4.2 Netscape 4 イベント モデル
13.4.2.1 Netscape 4 でのイベント キャプチャと例
13.4.2.2 Netscape 4 イベント オブジェクト
のプロパティ 13.5 コールバックとユーザー定義イベント
13.5.1 イベント処理パターン -- 単純なイベント処理パターンの実裝例
13.5.2 ユーザーイベントインターフェースの定義
13.5.3 イベント プロキシとイベント登録 -- 標(biāo)準(zhǔn)イベント インターフェイスの実裝例
13.5.4 標(biāo)準(zhǔn)モード -- イベントの送信と受信
13.6 例 -- 拡張データテーブル
13.6.1 拡張データテーブルとは
13.6.2 二重テーブルネストを使用したテーブルヘッダーの修正例
13.6.3 可変列幅
の実裝 13.6.4 行をマーク -- 他の行とは異なる背景色を表示します
13.6.5 ヒント -- スタイルシートにコードを追加する
13.7 概要
第 14 章 カスケード スタイル シート
14.1 カスケード スタイル シートとは
14.1.1 CSS スタイルとスタイルシート
14.1.2 CSSの標(biāo)準(zhǔn)化
14.1.3 ブラウザでサポートされる CSS
14.2 JavaScript と CSS
14.2.1 CSS と DOM の関係
14.2.2 CSS と IE の関係
14.2.3 ブラウザの CSS 互換性
14.3 ページスタイルを変更するための CSS の制御
14.3.1 構(gòu)造とプレゼンテーションの分離の実裝とその例
14.3.2 JwaScript と CSS を使用してページの複數(shù)のスタイルのリアルタイム置換を?qū)g現(xiàn)する
14.4 概要
第 15 章 データ ストレージのスクリプト記述
15.1 Cookie とは
15.1.1 ブラウザとクライアントの Cookie
15.1.2 Cookie の屬性
15.2 Cookie へのクライアント アクセス
15.2.1 Cookie の保存
15.2.2 Cookie の読み取り
15.3 Cookie の制限
15.4 Cookie の例 -- 挨拶を溫かくする
15.5 Cookie オブジェクトのカプセル化
15.6 userData とは
15.6.1 ブラウザとクライアントの userData
15.6.2 userData の宣言
15.6.3 UserData の屬性とメソッド
15.7 userData へのクライアント アクセス
15.7.1 userData の保存と読み取り
15.7.2 userData のセキュリティ
15.8 userData の制限事項(xiàng)
15.9 userData と cookie の比較
15.10 userData の例 -- userData を使用してクライアントにフォーム データを保存する例
15.11 概要
パート 4 データ対話
第 16 章 同期と非同期
16.1 同期と非同期とは何ですか
16.2 タイムアウト設(shè)定と時(shí)間間隔
16.3 タイマーの使用 -- リスニングと傍受
16.3.1 標(biāo)準(zhǔn)モード -- モニターとその例
16.3.2 タイマー使用時(shí)の注意點(diǎn)
16.4 例 -- 美しい Web 時(shí)計(jì)
16.4.1 Web クロックとは何ですか?
16.4.2 最も単純な Web クロック
16.4.3 Web クロックの設(shè)計(jì)
16.4.4 完全な Web クロック ソース コード
16.5 概要
第 17 章 XML DOM と XML HTTP
17.1 XML DOM オブジェクト
とは 17.1.1 XML DOM の概要
17.1.2 ブラウザでサポートされる XML DOM インターフェイス
17.1.2.1 XML DOM 標(biāo)準(zhǔn)インターフェース
17.1.2.2 IEのXML DOMコンポーネント
17.1.2.3 XML ドキュメントの操作 -- MSXML を使用して XML ドキュメントを操作する例
17.2 XML DOM のバージョン互換性 -- XML DOM のクロスブラウザ アプリケーション
17.3 XML DOM エラー処理
17.3.1 エラーメッセージを処理するための ParseError オブジェクト
17.3.2 エラーメッセージを含むドキュメント
17.4 XML ドキュメントの XML DOM 操作
17.4.1 アクセスノード
17.4.2 新しいノードの作成
17.4.3 ノードの移動(dòng)および変更とその例
17.4.4 ノード屬性とデータの読み取りと書き込み
17.4.5 ドキュメントの保存
17.5 例 -- JavaScript 棋譜リーダー (2)
17.5.1 XML を使用してチェスの記録を記述する
17.5.2 XML チェス レコードを SGF チェス レコードに変換する
17.6 XML HTTP オブジェクトとは
17.6.1 XML HTTP オブジェクトの概要
17.6.2 ブラウザでサポートされる XML HTTP オブジェクト
17.7 XML HTTP によるリクエストの送信
17.7.1 接続の確立
17.7.2 リクエストの送信
17.8 HTTP ヘッダーの読み取りと設(shè)定
17.8.1 HTTP ヘッダーとは
17.8.2 HTTP ヘッダーの読み取りと設(shè)定
17.9 サーバーの応答
17.9.1 同期応答と非同期応答とその例
17.9.2 応答テキストの內(nèi)容を含むResponseTextおよびResponseXML
17.10 概要
第 18 章 Ajax の概要
18.1 Ajax とは
18.1.1 Ajax は神秘的ではありません
18.1.2 Ajax アプリケーションのシナリオ
18.1.3 Ajax の競(jìng)合他社 — 他の代替テクノロジ
18.2 Ajax の予備調(diào)査 -- 初めての Ajax プログラム
18.2.1 通常のアプリケーションから開始します - シンプルなリアルタイム チャット ルーム
18.2.2 迷惑なページ更新
18.2.3 非更新ソリューション -- 改善されたチャット ルーム
18.2.4 非同期作業(yè) - 遅延の解決策
18.3 Ajax 原則の分析
18.3.1 XML HTTP リアルタイム通信と AjaxProxy オブジェクトをカプセル化する簡(jiǎn)単な例
18.3.2 データの動(dòng)的な表示 -- インタラクティブなエクスペリエンスを向上させる Ajax の重要な機(jī)能
18.3.3 XML の力を活用する
18.3.4 JavaScript を使用してすべてをバインドする
18.3.5 アプリケーションの背後にある標(biāo)準(zhǔn)
18.4 Ajax の例 -- リアルタイム チャット ツール
18.4.1 リアルタイムチャットツールとは
18.4.2 要件分析 ~リアルタイムチャット機(jī)能実裝のポイント
18.4.3 システム実裝 -- リアルタイムチャット機(jī)能の実裝
18.4.4 概要
18.5 概要
第 19 章 標(biāo)準(zhǔn)と互換性
19.1 標(biāo)準(zhǔn)化組織
19.1.1 W3C および DOM 標(biāo)準(zhǔn)
19.1.2 ECMA および JavaScript 標(biāo)準(zhǔn)
19.1.3 インターネット標(biāo)準(zhǔn)
19.2 プラットフォームとブラウザの互換性
19.2.1 最小公倍數(shù)法
19.2.2 防御コーディング
19.2.3 クライアント検出器
19.2.4 特徴検出
19.2.5 標(biāo)準(zhǔn)の実裝
19.2.6 中程度のシャットダウン
19.3 言語(yǔ)バージョンの互換性
19.3.1 言語(yǔ)屬性
19.3.2 バージョンテスト
19.4 クロスブラウザアプリケーションの実裝方法
19.4.1 トレードオフ -- サポート範(fàn)囲の制限
19.4.2 基本モジュール設(shè)計(jì) - 獨(dú)立した互換性検出
19.4.3 実行レベルの分割
19.4.4 正しい情報(bào)を提供する — コードを沈黙させないでください
19.4.5 適切なアプリケーションのテスト - 注意を怠ると、「互換性の悪魔」は常に「犬を蹴る」でしょう
19.4.6 近接基準(zhǔn)と近接原理
19.5 未來に目を向ける
19.6 概要
第 20 章 情報(bào)セキュリティ
20.1 ユーザーの個(gè)人情報(bào)
20.2 禁止および制限された操作
20.2.1 制限された屬性
20.2.2 制限された操作
20.2.3 スクリプトのセキュリティ レベル
20.2.4 スクリプトのデバッグ
20.3 舞臺(tái)裏の攻撃者に注意してください
20.3.1 攻撃方法
20.3.2 隠されたデータフロー
20.3.3 ページ?jìng)窝b
20.3.4 手がかりを見つける
20.3.5 予防方法
20.3.5.1 送信データの暗號(hào)化
20.3.5.2 ソースコードをユーザーから隠す
20.4 同一生成元ポリシー
20.4.1 同一オリジンポリシーとは
20.4.2 同一生成元ポリシーの長(zhǎng)所と短所
20.4.3 同一起源戦略を打破する
20.5 セキュリティゾーンと署名スクリプト
20.5.1 構(gòu)成可能なセキュリティ ポリシー ソリューション
20.5.2 Internet Explorer のセーフ ゾーン
20.5.3 Netscape の署名スクリプト
20.6 コード自體のセキュリティ -- 暗號(hào)化と難読化
20.6.1 暗號(hào)化と難読化を行う理由
20.6.2 クライアント側(cè)の暗號(hào)化テクノロジと例
20.6.3 コード難読化の原則
20.6.4 JavaScript コード難読化ツール -- コード難読化アルゴリズムの例
20.6.5 暗號(hào)化と難読化の組み合わせ
20.7 概要
パート 5 JavaScript を超えて
第 21 章 オブジェクト指向
21.1 オブジェクト指向とは
21.1.1 クラスとオブジェクト
21.1.2 パブリックとプライベート – 屬性のカプセル化
21.1.3 プロパティとメソッドの種類
21.2 魔法のプロトタイプ
21.2.1 プロトタイプ
とは 21.2.2 プロトタイプ
の使用に関するヒント21.2.2.1 プロトタイプオブジェクトへのプロパティの追加
21.2.2.2 デフォルト値
を持つ點(diǎn)オブジェクト 21.2.2.3 削除操作によりオブジェクト屬性がデフォルト値に復(fù)元されます
21.2.2.4 プロトタイプを使用してゲッターを賢く設(shè)計(jì)する
21.2.2.5 削除操作によりプロトタイプ屬性の可視性が復(fù)元されます
21.2.2.6 プロトタイプを使用して多數(shù)のコピーを作成する
21.2.2.7 プロトタイプを使用して靜的メソッドを定義する
21.2.3 プロトタイプの本質(zhì)とその例
21.2.4 プロトタイプ
の価値と制限 21.3 継承とポリモーフィズム
21.3.1 継承とは
21.3.2 継承を?qū)g裝するメソッド
21.3.2.1 構(gòu)造の継承方法とその例
21.3.2.2 プロトタイプの継承とその例
21.3.2.3 インスタンスの継承方法とその例
21.3.2.4 コピー継承メソッドとその例
21.3.2.5 いくつかの継承方法の比較
21.3.2.6 混合継承とその例
21.3.3 単一継承と多重継承
21.3.4 インターフェースとその実裝
21.3.5 ポリモーフィズムとその実裝
21.4 構(gòu)築と破壊
21.4.1 コンストラクター
21.4.2 複數(shù)の構(gòu)築
21.4.3 破壊
21.5 ミステリー! 「この」迷路
21.5.1 無數(shù)の罠――“これ”の厄介な謎
21.5.1.1 この代名詞
の使用 21.5.1.2 この「トラップ」
21.5.1.3 この代名詞
の非同期の問題 21.5.2 代替の利點(diǎn)と欠點(diǎn) - 悪い使用習(xí)慣
21.5.3 非同期呼び出し -- 誰(shuí)が私の「これ」に觸れたのか
21.5.4 真実を明らかにする -- JavaScript における「this」の性質(zhì)
21.5.5 もう難しいことはありません -- クロージャを使用して「この」參照を修正します
21.6 オブジェクトのパッケージ化
21.6.1 値と參照の區(qū)別
21.6.2 梱包と開梱
21.7 メタクラス、クラステンプレート
21.7.1 メタクラスとは
21.7.2 メタクラス -- クラス
を構(gòu)築するクラス 21.7.3 メタクラス
を使用する理由 21.7.4 クラスファクトリー
21.7.4.1 クラスファクトリーとは
21.7.4.2 クラスファクトリーを確立する理由
21.8 作成者は誰(shuí)ですか
21.8.1 すべてに適用される原則
21.8.2 究極の抽象化 -- 抽象パターンの例
21.8.3 自然への回帰、相同アーキテクチャ
21.9 概要
第 22 章 クロージャと関數(shù)型プログラミング
22.1 動(dòng)的言語(yǔ)とクロージャ
22.1.1 動(dòng)的言語(yǔ)
22.1.2 構(gòu)文ドメインと実行ドメイン
22.1.3 JavaScript クロージャ - クロージャの本質(zhì)を反映した例
22.2 閉鎖の特徴と形式
22.2.1 閉鎖の內(nèi)部 -- 自律性の領(lǐng)域
22.2.2 外部環(huán)境へのアクセス -- クロージャを使用して外部環(huán)境を変更する例
22.2.3 クロージャとオブジェクト指向
22.2.4 他の形式のクロージャー
22.3 クロージャが適さない狀況
22.4 関數(shù)型プログラミング
22.4.1 関數(shù)型プログラミングとは
22.4.1.1 関數(shù)はタイプ 1 です
22.4.1.2 クロージャと関數(shù)型プログラミング
22.4.1.3 カリー化 - 興味深い概念
22.4.1.4 遅延評(píng)価と継続 -- フィボナッチ無限數(shù)列の例
22.4.2 関數(shù)型プログラミング、定式化、および數(shù)學(xué)モデル -- 放物線方程式の例
22.4.3 関數(shù)型プログラミングの利點(diǎn)
22.4.3.1 単體テストの利點(diǎn)
22.4.3.2 デバッグの利點(diǎn)
22.4.3.3 並列処理の利點(diǎn)
22.4.3.4 ホットコード展開の利點(diǎn)
22.4.3.5 機(jī)械支援による推論と最適化
22.4.4 関數(shù)型プログラミングの欠點(diǎn)
22.4.4.1 クロージャの副作用
22.4.4.2 再帰形式
22.4.4.3 遅延評(píng)価の副作用
22.5 クロージャとオブジェクト指向
22.5.1 プライベートドメイン
22.5.2 名前空間の管理
22.5.3 友達(dá) - 非常に興味深い概念
22.6 Python スタイルの JavaScript コード
22.6.1 最小コード
22.6.2 軽量の再利用
22.6.2.1 JSON
22.6.2.2 機(jī)能的な
22.6.2.3 反復(fù)関數(shù) -- 配列反復(fù)関數(shù)の例
22.6.3 モジュール管理とその例
22.7 概要
第 23 章 モジュールレベルの管理
23.1 モジュール管理
23.1.1 モジュール化 -- コードの再利用
23.1.2 JavaScript モジュール管理
23.2 オープンクローズの原則とインターフェース指向
23.2.1 オープンとクローズの原則
23.2.2 インターフェース指向
23.3 名前空間の管理
23.3.1 ネームスペースとは
23.3.2 名前空間
を使用する理由 23.3.3 JavaScript 名前空間の管理
23.4 依存関係の呼び出し
23.4.1 モジュールの依存関係
23.4.2 モジュールの依存関係の管理
23.5 コードを使用してコードを管理する
23.5.1 実行環(huán)境の管理
23.5.2 マネージ コード -- 単純なマネージ コード「コンテナ」
23.5.3 完全なコード管理コンテナ
23.6 概要
第 24 章 動(dòng)的構(gòu)築
24.1 コードにコードを記述させる
24.1.1 スクリプトの動(dòng)的解析
24.1.2 文法拡張 -- 獨(dú)自の言語(yǔ)を作成する
24.2 「発明された」構(gòu)文
24.2.1 正規(guī)表現(xiàn)と構(gòu)文分析と例
24.2.2 単純な文法パーサーの実裝
24.2.2.1 JavaScript 2.0 構(gòu)文とは
24.2.2.2 JavaScript 2.0 構(gòu)文のいくつかの主要な機(jī)能の実裝
24.3 獨(dú)自の方言を?qū)g裝する -- LispScript
24.3.1 JavaScript から Lisp へ
24.3.2 初期作業(yè) -- 一般的な JavaScript コード
24.3.3 公理、式
24.3.4 関數(shù)型プログラミングの 7 つの基本公準(zhǔn)
24.3.4.1 「參照」仮定
24.3.4.2 「アトミック」仮定
24.3.4.3 「等しい価値」の仮定
24.3.4.4 「テーブルヘッダー」仮定
24.3.4.5 「剰余テーブル」仮定
24.3.4.6 「合計(jì)テーブル」仮定
24.3.4.7 「條件付き」仮説
24.3.5 関數(shù)の文法
24.3.6 LispScript を使用した新しい関數(shù)の定義
24.3.7 驚き--_eval
24.3.8 その他の拡張機(jī)能
24.3.9 概要
24.3.10 ランタイム環(huán)境とコードコンテナ - 「新しく発明された」LispScript の実際のパフォーマンスを見てみましょう
24.4 概要
第 25 章 実行効率
25.1 なぜ実行効率について議論する必要があるのか??
25.1.1 顧客からの苦情 – JavaScript はどの程度遅いのか
25.1.2 コードが遅くなるのは誰(shuí)のせいですか
25.2 閉鎖の代償
25.2.1 過剰なカプセル化によるパフォーマンスの問題
25.2.2 情報(bào)隠蔽の長(zhǎng)所と短所
25.2.3 オブジェクトの構(gòu)築コスト
25.3 箱の中で流れる火
25.3.1 DOM メモリのオーバーヘッド
25.3.2 ブラウザのメモリ管理
25.3.3 事実を明確に見る - メモリリークの存在
25.3.4 注 -- 時(shí)間內(nèi)に「ボックス」を閉じてください
25.3.5 いくつかの誤解の説明
25.3.5.1 スクリプトが動(dòng)的に DOM を作成し、メモリ リークを引き起こす
25.3.5.2 クロージャによりメモリリークが発生する
25.4 ダイナミクス -- 悪魔と天使
25.4.1 動(dòng)的解析のパフォーマンス分析 - 動(dòng)的特性の効率テスト
25.4.2 開発効率と実行効率 -- 永遠(yuǎn)の難しい選択
25.4.3 美しさと応用性 -- 悪魔の誘惑に耐えることを?qū)Wびましょう
25.4.4 顧客の目に天使のように振る舞う
25.5 コードを踴らせよう
25.5.1 シンプルさは美しい -- コードをスリム化する
25.5.2 最も完璧なアプリケーションは
を使用しないことです 25.5.3 高い抽象化は問題を単純化することです
25.5.4 論理と表現(xiàn)は同様に重要です
25.5.5 コードを厳密に保つ
25.5.6 美しい文體 - 読者を幸せにする
25.6 概要
第 26 章 アプリケーション フレームワーク
26.1 アプリケーションフレームワークの概要
26.1.1 アプリケーションフレームワークとは
26.1.2 アプリケーションフレームワークのコンポーネント
26.1.2.1 クラスライブラリ
26.1.2.2 コアモジュール
26.1.2.3 環(huán)境設(shè)定
26.1.2.4 ユーザーマニュアル
26.2 アプリケーションフレームワークを設(shè)計(jì)する理由
26.2.1 アプリケーションフレームワークの範(fàn)囲
26.2.2 アプリケーションフレームワークの長(zhǎng)所と短所
26.3 アプリケーションフレームワークの設(shè)計(jì)方法
26.3.1 設(shè)計(jì)目標(biāo)を把握する
26.3.2 アプリケーションフレームワークの設(shè)計(jì)ガイドライン
26.3.3 成熟したアプリケーション フレームワークとはどのようなアプリケーション フレームワークなのか
26.3.4 アプリケーションフレームワークの設(shè)計(jì)方法
26.3.5 実戦!シンプルなアプリケーションフレームワークを設(shè)計(jì)する
26.3.5.1 自己記述型
26.3.5.2 基本的なインターフェースとセマンティックコード
26.3.5.3 コアオブジェクトのプロトタイプ拡張
26.3.5.4 簡(jiǎn)単な方法
26.3.5.5 名前空間
26.3.5.6 標(biāo)準(zhǔn)とクロスブラウザのサポート
26.3.5.7 イベント モデル -- Silverna のイベント モデル
26.3.5.8 アプリケーションモード
26.3.5.9 Ajax コンポーネントの提供
26.3.5.10 メモリ管理とその他
26.4 フレームワークの実際の適用 -- Silverna 2.0 フレームワークで開発されたウィジェット
26.5 既存のアプリケーションフレームワーク
26.5.1 プロトタイプ
26.5.2 JQuery
26.5.3 道場(chǎng)
26.5.4 JSVM
26.5.5 その他のフレームワーク
26.5.5.1 Bindows (2003 年に設(shè)立)
26.5.5.2 BackBase (2003 年に設(shè)立)
26.5.5.3 DOJO (開発中、2004 年 9 月設(shè)立)
26.5.5.4 Open Rico (開発中、初期の獨(dú)自フレームワークに基づいて 2005 年 5 月に設(shè)立)
26.5.5.5 qooxdoo (開発中、2005 年 5 月に確立)
26.5.5.6 チベット (開発中、2005 年 6 月に作成)
26.5.5.7 AJFORM (2005 年 6 月作成)
26.6 概要

このウェブサイトの聲明
當(dāng)サイトのすべてのリソースはネットユーザーが投稿したり、各ダウンロードステーションを転載したりしているので、ソフトウェアの完全性を自分でチェックしてください!當(dāng)サイトのすべてのリソースは學(xué)習(xí)と參考のためだけに使用されます。ビジネス用途には使用しないでください。そうしないと、発生したすべての結(jié)果はあなた自身が負(fù)擔(dān)します!権利侵害がある場(chǎng)合は、次の連絡(luò)先に連絡(luò)してください。admin@php.cn

関連する推奨事項(xiàng)

手作り焼き菓子のウェブサイトのテンプレート

手作り焼き食品ウェブサイト テンプレート ウェブサイト テンプレートは、さまざまな手作り焼き食品プロモーション ウェブサイト テンプレートをダウンロードできるウェブサイト テンプレートです。ヒント: このテンプレートは Google フォント ライブラリを呼び出すため、ページが開くのが遅くなる場(chǎng)合があります。

現(xiàn)代の人工知能ライティングサービス會(huì)社のウェブサイトのテンプレート

最新の人工知能ライティング サービス會(huì)社の Web サイト テンプレートは、人工知能ライティング サービスを提供する企業(yè)のプロモーション Web サイト テンプレートのダウンロードです。ヒント: このテンプレートは Google フォント ライブラリを呼び出すため、ページが開くのが遅くなる場(chǎng)合があります。

ソリューション プランニング ソリューション サービス スタジオ Web サイト テンプレート

企畫企畫ソリューションサービススタジオのWebサイトテンプレートは、様々な企畫企畫サービスを提供する企業(yè)プロモーションWebサイトのテンプレートダウンロードです。ヒント: このテンプレートは Google フォント ライブラリを呼び出すため、ページが開くのが遅くなる場(chǎng)合があります。

スマート ビジネス コンサルティング サービス會(huì)社の Web サイト テンプレート

インテリジェント ビジネス コンサルティング サービス企業(yè) Web サイト テンプレートは、さまざまなビジネス コンサルティング サービスを提供する企業(yè)プロモーション Web サイト テンプレートのダウンロードです。ヒント: このテンプレートは Google フォント ライブラリを呼び出すため、ページが開くのが遅くなる場(chǎng)合があります。

IT ソリューション プロバイダーのプロモーション Web サイトのテンプレート

ITソリューションプロバイダーのプロモーションWebサイトテンプレートは、さまざまなITテクノロジーソリューションを提供する企業(yè)に適したプロモーションWebサイトテンプレートのダウンロードです。ヒント: このテンプレートは Google フォント ライブラリを呼び出すため、ページが開くのが遅くなる場(chǎng)合があります。

HTML5 エンタープライズ ブロックチェーン サービス Web サイト テンプレート

HTML5 エンタープライズ ブロックチェーン サービス Web サイト テンプレートは、企業(yè)向けにブロックチェーン サービスを提供する企業(yè)プロモーション Web サイト テンプレートのダウンロードです。ヒント: このテンプレートは Google フォント ライブラリを呼び出すため、ページが開くのが遅くなる場(chǎng)合があります。

インドの宗教文化教育ウェブサイトのテンプレート

インドの宗教と文化教育の Web サイト テンプレートは、インドの宗教、文化、教育の広報(bào)サービスに適した Web サイト テンプレートのダウンロードです。ヒント: このテンプレートは Google フォント ライブラリを呼び出すため、ページが開くのが遅くなる場(chǎng)合があります。

シンプルなパープルスタイルのITソリューション會(huì)社のウェブサイトのテンプレート

ミニマリスト パープル スタイルの IT ソリューション會(huì)社の Web サイト テンプレートは、T ソリューション會(huì)社のプロモーション Web サイト テンプレート Web サイト テンプレートのダウンロードを提供する Web サイト テンプレートです。ヒント: このテンプレートは Google フォント ライブラリを呼び出すため、ページが開くのが遅くなる場(chǎng)合があります。

人気のおすすめ

TP5実戦_指導(dǎo)管理システムサイト全體ソースコード

この一連のチュートリアルでは、実際の學(xué)校の教育管理システムを例として使用し、白い紙の上で ThinkPHP5 フレームワークを使用して商用プロジェクトを迅速に開発する方法を段階的に説明します。これにより、TP5 をすぐに使い始めることができます。プロジェクト開発です。

PHP共通関數(shù)まとめ表

PHPでよく使われる関數(shù)、開発時(shí)によく使われる関數(shù)

PHP実踐天龍坡模倣iQiyi映畫ウェブサイトコースウェア

PHP実踐天龍坡模倣iQiyi映畫ウェブサイトコースウェア

TP5 エンタープライズ Web サイト開発ソース コード

當(dāng)サイトの「ThinkPHP5 エンタープライズサイト高速開発コース」パッケージ

Thinkphp6.0 正式版ビデオチュートリアル

Thinkphp6.0 正式版ビデオチュートリアル

thinkphp3.2.3 ブログ テンプレート

thinkphp3.2.3 ブログ テンプレート

一般的なバックエンド管理システム(Thinkphp6+Layui)の実踐開発に関するコースウェア

一般的なバックエンド管理システム(Thinkphp6+Layui)の実踐開発に関するコースウェア

ThinkPHP5 モール プロジェクトの実踐的なビデオ チュートリアル コースウェアのソース コード

ThinkPHP5 モール プロジェクトの実踐的なビデオ チュートリアル コースウェアのソース コード

ライブクラス_ブログプロジェクトのソースコード

ライブクラス_ブログプロジェクトのソースコード