ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScriptコアリーディング:言語コア_基礎知識
この本を読む前に、この JavaScript コアを翻訳してくれた Taobao 技術チームに感謝し、この本を書いてくれた Flanagan に感謝したいと思います。無私無欲の情報共有に感謝し、このメモをあなたの勤勉に捧げます。
1: JavaScript 言語コア
この章以降では、主に JavaScript の基本に焦点を当てます。第 2 章では、JavaScript のコメント、セミコロン、Unicode 文字セットについて説明します。第 3 章では、主に JavaScript の変数と代入について説明します。
最初の 2 章の重要なポイントを示すコード例をいくつか示します。
JavaScript で式を記述する最も一般的な方法は、次のコードのような演算子です
JavaScriptの「フレーズ」が式の場合、その文全体をステートメントと呼びますが、これについては第5章で詳しく説明します。
上記のコードでは、セミコロンで終わる行はすべてステートメントです。大まかに言えば、式は値 (またはそこに含まれる値は気にしません) を計算するだけですが、プログラムの実行状態を変更します。上記では、変数宣言ステートメントと代入ステートメントを見てきました。もう 1 つのステートメントは、条件判定やループなどの「制御構造」です。関数を紹介した後、関連するサンプル コードを示します。
関数は、一度定義して複数回使用できる名前とパラメーターを持つ JavaScript コード セグメントです。第 8 章では、機能について形式的に詳しく説明します。オブジェクトや配列と同様に、関数についても本書の多くの場所で言及されています。簡単なコード例をいくつか示します。
これは簡単な例です。このコードは、2D 面のジオメトリ内の点を表すクラスを JavaScript で定義する方法を示しています。このクラスによってインスタンス化されたオブジェクトには、変化点から原点までの距離を計算するために使用される r() という名前のメソッドがあります。
第 9 章は最初の部分 の本質です。後続の章は散発的に拡張されており、JavaScript の探求の終わりにつながります。
第 10 章では主に、正規表現を使用したテキスト マッチング パターンについて説明します。
第 11 章は、コア JavaScript 言語 のサブセットおよびスーパーセットです。
クライアント側 JavaScript の内容に入る前に、第 12 章では、Web の外部にある 2 つの JavaScript 実行環境を紹介するだけで済みます。
2. クライアント JavaScript
JavaScript 言語の中核部分には相互参照が多く、知識の階層が明確ではありません。クライアントサイド JavaScript のコンテンツ レイアウトは大きく変更されました。この章に従うことで、Web ブラウザで JavaScript を使用できるようになります。 (ただし、この本を読んで JavaScript を学びたい場合は、第 2 部だけに集中することはできません) 第 13 章は第 2 部の最初の章であり、Web ブラウザで JavaScript を実行する方法を紹介します。 第 14 章では、Web ブラウザのスクリプト テクノロジについて説明し、クライアント側 JavaScript の重要なグローバル機能について説明します。
例:
第 15 章では、JavaScript が HTML スタイル定義コンテンツの表示をどのように操作するかについて説明します 第 15 章の内容は、スクリプトを使用して HTML ドキュメントのコンテンツを操作する、より実用的なものであり、選択方法を示します。特定の Web ページ要素、HTML 要素の属性を設定する方法、要素のコンテンツを変更する方法、ドキュメントに新しいノードを追加する方法
次の関数例は、基本的な記事コンテンツを検索して変更する方法を示しています
//要素が存在しない場合は、要素を作成します
if (!log) {
log = document.createElement("div") // 新しい div 要素を作成します
log.id = "debuglog";
log.innerHTML = "
にメッセージを含めてログに追加します
var pre = document.createElement("pre") // pre 要素を作成します
var text = document.createElement(msg) //テキストノードにメッセージを含めます
pre.appendChild(text) //テキストが pre
に追加されます。 log.appendChild(pre) //pre が log
に追加されます。 }
第 16 章では、JavaScript を使用して要素 を操作する方法について説明します。これには通常、要素 の style 属性と class 属性が使用されます。
If (!e.className) e.className = "highcss";
それ以外の場合
e.className = "highcss";
}
JavaScript を使用して要素のコンテンツと CSS スタイルを制御でき、イベント ハンドラーを使用してドキュメントの動作を定義することもできます。イベント ハンドラーはブラウザー センターに登録された JavaScript 関数であり、特定のイベントが発生すると、ブラウザーはこれを呼び出すことができます。関数。
通常、私たちが懸念するイベントの種類は、マウスのクリックとキーボードのキー イベントです (スマートフォンの場合はさまざまなタッチ イベントです)。つまり、ブラウザがドキュメントの読み込みを完了したとき、ユーザーがウィンドウのサイズを変更したとき、またはユーザーがフォームにデータを入力したときに、ヒューマン イベントがトリガーされます。
第 17 章では、タイム ハンドラーを定義および登録する方法と、イベント発生時にブラウザがタイム ハンドラーを呼び出す方法について詳しく説明します。
イベント ハンドラーをカスタマイズする最も簡単な方法は、コールバックを onclick という接頭辞を付けた HTML 属性にバインドすることです。最も実用的な方法は、コールバックを "onclick" ハンドラーにバインドすることです。上記の debug() 関数と Hide() 関数が debug.js ファイルと hide.js ファイルに保存されていると仮定すると、単純な HTML テスト ファイルを使用して onclick 属性のイベント ハンドラーを指定できます。以下の通り
にメッセージを含めてログに追加します
var pre = document.createElement("pre") // pre 要素を作成します
var text = document.createElement(msg) //テキストノードにメッセージを含めます
pre.appendChild(text) //テキストが pre
に追加されます。 log.appendChild(pre) //pre が log
に追加されます。 }
function hide(e, reflow) { //jvascript を通じて要素を操作し、要素を非表示にします e
if (reflow) { //2 番目のパラメータが true の場合
e.style.display = "none" //この要素を非表示にすると、それが占有するスペースも販売されます
} else {
e.style.visibility = "hidden" // e を非表示にし、それが占めるスペースを保持します
}
}
function height(e) { //cssの設定でe
を強調表示する If (!e.className) e.className = "highcss";
その他
e.className = "highcss";
}
こんにちは
//画像を走査し、各ノードのクリック イベントにハンドラーを追加します
//クリックすると画像を非表示にします
for (var i = 0; i
If (imge.addEventListener) //時間ハンドラーを登録する別の方法
imge.addeventlistener( "click"、hide、false);
else //ie8以前の操作と互換性あり
imge.attachevent( "onclick"、hide);
}
//これは、上記で登録されたイベントのハンドラー関数です
function hide(evnet) {
event.target.style.visibility = "hidden";
}
};
第 15 章から第 17 章では、JavaScript を使用して Web ページのコンテンツ 、スタイル、動作 (イベント処理) を制御する方法について説明します。この章で説明する API はやや複雑で、ブラウザーの性能も優れていません。多くの JavaScript プログラマがコーディング作業を簡略化するために「ライブラリ」または「フレームワーク」を使用するのはこのためです。第 19 章では jQuery ライブラリを紹介します。
第 18 章では、JavaScript を使用して http リクエストを開始する方法について説明します。
第 20 章では、クライアント アプリケーションのデータ ストレージ メカニズムとセッション状態の維持について説明します。第 21 章では、HTML5 によって駆動される新世代のアプリケーション API/ネットワーク ストレージ グラフィックスと、ブラウザ開発に基づくこれらのサポートについて説明します。新しい API の数。浙江省は、JavaScript プログラマーにとって最もエキサイティングな時期です。最後の 4 章にはサンプル コードがあまりありません。次の例では、これらの新しい API を使用します。