ホームページ >ウェブフロントエンド >jsチュートリアル >JavaSciptオブジェクトの基礎知識_基礎知識

JavaSciptオブジェクトの基礎知識_基礎知識

PHP中文网
PHP中文网オリジナル
2016-05-16 19:06:33969ブラウズ

JavaScript は「オブジェクト指向プログラミング」または「オブジェクト指向プログラミング」を使用します。いわゆる「オブジェクト指向プログラミング」とは、JavaScript の範囲を大きなオブジェクトと小さなオブジェクトに分割し、そのオブジェクトの下位のオブジェクトを非常に詳細になるまで分割し続けることを意味します。すべてのプログラミングはオブジェクトを出発点として、オブジェクトに基づいています。変数のように小さいものから、Web ページのドキュメント、ウィンドウ、または画面のように大きいものまで、それらはすべてオブジェクトです。この章ではJavaScriptの「オブジェクト指向」の動作について説明します。
オブジェクトの基礎知識
オブジェクトは、JavaScript の「影響範囲」から分割できる小さな部分であり、テキスト、画像、フォームなどです。各オブジェクトには独自のプロパティ、メソッド、イベントがあります。オブジェクトのプロパティは、文字列の長さ、画像の長さと幅、テキスト ボックス (Textbox) 内のテキストなど、オブジェクトのメソッドが実行できる特定のオブジェクトのプロパティを反映します。たとえば、フォームの「送信」、ウィンドウの「スクロール」など、オブジェクトに対するいくつかの処理や、オブジェクトのイベントは、たとえばフォームの送信など、オブジェクト上で発生する処理に応答できます。はフォームの「送信イベント」を生成し、接続をクリックするとフォームの「送信イベント」クリックイベントを生成します。すべてのオブジェクトが上記の 3 つのプロパティを持つわけではなく、イベントを持たないオブジェクトや属性のみを持つオブジェクトもあります。オブジェクトの「プロパティ」を参照するには、「.」メソッドを使用します。

基本オブジェクト
ここで、上で学んだことを復習する必要があります。オブジェクトの観点からいくつかのデータ型を再学習します。
数値 「数値」オブジェクト。このオブジェクトはめったに使用されず、作者は一度も見たことがありません。しかし、「数値」に属するオブジェクト、つまり「変数」は数多くあります。

属性
MAX_VALUE 使用法: Number.MAX_VALUE; 「最大値」を返します。
MIN_VALUE 使用法: Number.MIN_VALUE; は「最小値」を返します。
NaN の使用法: Number.NaN または NaN は「NaN」を返します。 「NaN」(非数)は非常に早い段階で導入されました。
NEGATIVE_INFINITY 使用法: Number.NEGATIVE_INFINITY; 戻り値: 負の無限大、「最小値」より小さい値。
POSITIVE_INFINITY 使用法: Number.POSITIVE_INFINITY; 戻り値: 正の無限大、「最大値」より大きい値。
メソッド
toString() 使用法: <数値変数>.toString(); 戻り値: 文字列形式の数値。例: a == 123; の場合、a.toString() == '123'。

String 文字列オブジェクト。文字列オブジェクトを宣言する最も簡単、迅速、効果的で一般的に使用される方法は、文字列オブジェクトを直接割り当てることです。

属性
length 使用法: .length; 文字列の長さを返します。
メソッド
charAt() 使用法: .charAt(); の位置にある文字列の 1 文字を返します。注: 文字列内の 1 つの文字は位置 0 にあり、2 番目の文字は位置 1 にあり、最後の文字は位置長 - 1 にあります。
charCodeAt() 使用法: .charCodeAt(); 文字列の 位置にある 1 つの文字の ASCII コードを返します。
fromCharCode() の使用法: String.fromCharCode(a, b, c...); 文字列内の各文字の ASCII コードは、a、b、c... などによって決まります。
indexOf() の使用法: .indexOf([, ]); このメソッドは の検索から派生しています。 ( が指定されている場合、前の位置は無視されます)、見つかった場合はその位置を返し、見つからなかった場合は「-1」を返します。すべての「ポジション」はゼロから始まります。
lastIndexOf() の使用法: .lastIndexOf([, ]); IndexOf() と似ていますが、後ろから検索してみます。
split() の使用法: .split(); substring() 使用法: .substring([, ]); < 位置から始まる元の文字列の部分文字列を返します。 位置の前の位置に移動します。 - = 文字列の長さ (length) を返します。 が指定されていないか、文字列の長さを超えている場合、部分文字列は の位置から元の文字列の末尾までが取得されます。指定された場所で文字列を返せない場合は、空の文字列が返されます。
substr() の使用法: .substr([, ]); 元の文字列の部分文字列を返します。これは、元の文字列の開始部分です。 位置にあり、長さは です。 が指定されていないか、文字列の長さを超えている場合、部分文字列は の位置から元の文字列の末尾までが取得されます。指定された場所で文字列を返せない場合は、空の文字列が返されます。
toLowerCase() 使用法: .toLowerCase(); は、元の文字列の大文字をすべて小文字に変更する文字列を返します。
toUpperCase() 使用法: .toUpperCase(); は、元の文字列の小文字をすべて大文字に変換する文字列を返します。

Array 配列オブジェクト。配列オブジェクトはオブジェクトのコレクションであり、内部のオブジェクトはさまざまなタイプにすることができます。配列の各メンバー オブジェクトには、配列内での位置を示すために使用される「添え字」があります (これは「位置」であるため、ゼロから始まります)。
配列の定義方法:

var = new Array();

これは空の配列を定義します。将来配列要素を追加するには、次を使用します:

[] = ...;

ここでの角括弧は省略できないことに注意してください。 " は、配列の添字を角括弧で囲んで表現することを意味します。
配列を定義するときにデータを直接初期化する場合は、次を使用してください:

var = new Array(, ,
たとえば、var myArray = new Array(1, 4.5, 'Hi'); は配列 myArray を定義し、内部の要素は次のとおりです。 myArray[1] == 4.5; myArray[2] == 'こんにちは'。
ただし、要素リストに要素が 1 つだけあり、この要素が正の整数である場合は、 要素を含む配列が定義されます。
注: JavaScript には 1 次元配列しかありません。 4 x 5 の 2 次元配列を定義するために愚かなメソッド "Array(3,4)" を使用したり、"2 次元配列" の要素を返すためにメソッド "myArray[2,3]" を使用したりしないでください。 「myArray[...,3]」という形式の呼び出しは、実際には「myArray[3]」のみを返します。多次元配列を使用するには、次の仮想メソッドを使用します。

var myArray = new Array(new Array(), new Array(), new Array(), ...);実際、これは 1 次元配列であり、その中の各要素は配列です。この「2 次元配列」の要素を呼び出す場合: myArray[2][3] = ...;

property
length 使用法: .length; 戻り値: array の要素、つまり配列内に要素がいくつあるか。これは、配列内の最後の要素のインデックスに 1 を加えたものと等しくなります。したがって、要素を追加したい場合は、myArray[myArray.length] = ... のようにするだけです。
メソッド
join() の使用法: .join(); 記号 > で区切って配列内の要素を連結した文字列を返します。 。このメソッドは、配列の元の内容には影響しません。
reverse() の使用法: .reverse(); は、配列内の要素の順序を逆にします。このメソッドを配列 [1, 2, 3] に対して使用すると、配列は [3, 2, 1] に変更されます。
slice() の使用法: .slice([, ]); は、 から始まる元の配列のサブセットである配列を返します。ついに<ついに>。 が指定されていない場合は、元の配列の終わりまでサブセットが取得されます。
sort() の使用法: .sort([]); 配列内の要素を特定の順序で配置します。 が指定されていない場合は、アルファベット順が使用されます。この場合、80 は 9 よりも上位にランクされます。 を指定した場合は、 で指定されたソート方法でソートされます。 は説明が難しいので、ここでは便利な をいくつか紹介します。
数値を昇順に並べます:

function sortMethod(a, b) {
return a - b;

myArray.sort(sortMethod);

数値を降順に並べ替えます。 「a - b」は「b - a」になります。
機能については以下をご覧ください。

Math データの数学的計算を行う「Math」オブジェクト。以下で説明するプロパティとメソッドでは、「使用法」については詳しく説明しません。使用する場合は、「Math.」の形式を使用することを忘れないでください。

属性
E は定数 e (2.718281828...) を返します。
LN2 は 2 の自然対数 (ln 2) を返します。
LN10 は 10 の自然対数 (ln 10) を返します。
LOG2E 2 を最小値とする e の対数を返します (log2e)。
LOG10E は、10 を最小値とする e の対数を返します (log10e)。
PI は π (3.1415926535...) を返します。
SQRT1_2 は 1/2 の平方根を返します。
SQRT2 は 2 の平方根を返します。
メソッド
abs(x) は x の絶対値を返します。
acos(x) は、ラジアンで表された x の逆余弦 (余弦は x の角度に等しい) を返します。
asin(x) は x の逆正弦を返します。
atan(x) は x の逆正接を返します。
atan2(x, y) は、複素平面内の点 (x, y) に対応する複素数の引数角度をラジアンで表し、その値は -π から π までの範囲で返します。
ceil(x) は、x 以上の最小の整数を返します。
cos(x) は x のコサインを返します。
exp(x) は、e の x 乗 (ex) を返します。
floor(x) は、x 以下の最大の整数を返します。
log(x) は、x の自然対数 (ln x) を返します。
max(a, b) は、a、b の大きい方の数を返します。
min(a, b) は、a、b の小さい方の数を返します。
pow(n, m) は、n の m 乗 (nm) を返します。
random() は、0 より大きく 1 未満の乱数を返します。
round(x) は、x の四捨五入された値を返します。
sin(x) は x の正弦を返します。
sqrt(x) は x の平方根を返します。
tan(x) は x のタンジェントを返します。

Date 日付オブジェクト。このオブジェクトは、0001 から 9999 までの任意の日付を保存でき、ミリ秒 (1/1000 秒) の精度を保つことができます。内部的には、日付オブジェクトは、1970 年 1 月 1 日の午前 0 時から、日付オブジェクトが指す日付までのミリ秒数を表す整数です。参照された日付が 1970 年より前の場合、それは負の数になります。タイム ゾーンが指定されていない場合、すべての日付と時刻には、数値的には「GMT」 (グリニッジ標準時) と同じである「UTC」 (世界時) タイム ゾーンが使用されます。
日付オブジェクトを定義します:

var d = new Date;

このメソッドは d を日付オブジェクトにし、初期値として現在時刻を持ちます。初期値をカスタマイズしたい場合は、以下を使用できます:

var d = new Date(99, 10, 1); //1999 年 10 月 1 日
var d = new Date('Oct 1) , 1999'); // 1999 年 10 月 1 日

およびその他のメソッド。一番良い方法は、以下で紹介する「方法」を使って時間を厳密に定義することです。

メソッド
以下の「g/set[UTC]XXX」のようなメソッドがたくさんありますが、これは「getXXX」メソッドと「setXXX」メソッドの両方が存在することを意味します。 「Get」はある値を取得すること、「set」はある値を設定することです。 「UTC」文字がある場合は、取得/設定される値が UTC 時間に基づいていることを意味し、そうでない場合は、現地時間または閲覧期間のデフォルト時間に基づいていることを意味します。
特に記述がない場合、メソッドの使用形式は「.」となります。以下同様。
g/set[UTC]Full Year() 4 桁で表される年を返す/設定します。 「x.set[UTC]Full Year(99)」を使用すると、年は 0099 に設定されます。
g/set[UTC] Year() は、2 桁で表される年を返す/設定します。設定するとブラウザが自動的に先頭に「19」を付けてくれるので、「x.set[UTC] Year(00)」で西暦を1900年に設定します。
g/set[UTC]Month() は月を返す/設定します。
g/set[UTC]Date() は日付を返す/設定します。
g/set[UTC]Day() は曜日を返す/設定します。0 は日曜日を意味します。
g/set[UTC]Hours() は、24 時間形式で時間数を返す/設定します。
g/set[UTC]Minutes() は分を返す/設定します。
g/set[UTC]Seconds() は秒数を返す/設定します。
g/set[UTC]Milliseconds() はミリ秒数を返す/設定します。
g/setTime() は、日付オブジェクトの内部処理メソッドである時刻を返す/設定します。これは、1970 年 1 月 1 日の 0:00 から日付オブジェクトが指す日付までをミリ秒単位で計算したものです。日付オブジェクトが指す時刻を 1 時間遅らせたい場合は、「x.setTime(x.getTime() 60 * 60 * 1000);」を使用します (1 時間 60 分、1 分 60 秒、1 秒 1000)ミリ秒)。
getTimezoneOffset() は、日付オブジェクトで使用されるタイムゾーンとグリニッジ標準時の差を分単位で返します。グリニッジ以東の都市部では、値は負になります。たとえば、中国のタイムゾーン (GMT 0800) は「-480」を返します。
toString() は、日付オブジェクトが指す日付を説明する文字列を返します。この文字列の形式は、「Fri Jul 21 15:43:46 UTC 0800 2000」のようになります。
toLocaleString() は、日付オブジェクトが指す日付を現地時間形式で表す文字列を返します。例:「2000-07-21 15:43:46」。
toGMTString() は、日付オブジェクトが指す日付を表す文字列を GMT 形式で返します。
toUTCString() は、日付オブジェクトが指す日付を記述する文字列を UTC 形式で返します。
parse() 使用法: Date.parse(); 日付オブジェクトの内部式を返します。



グローバル オブジェクト
グローバル オブジェクトは、グローバル関数を「オブジェクト化」することを目的としており、仮想的であると言えます。 Microsoft JScript Language Reference では、これは「Global Object」と呼ばれていますが、そのメソッドとプロパティは「Global.xxx」では決して参照されず (参照するとエラーが発生します)、「xxx」で直接参照されます。

属性
NaN 早めに言いました。
メソッド
eval() は、括弧で囲まれた文字列を標準のステートメントまたは式として操作します。
isFinite() は、括弧内の数値が「有限」(Number.MIN_VALUE と Number.MAX_VALUE の間)の場合は true を返し、それ以外の場合は false を返します。
isNaN() は、括弧内の値が「NaN」の場合は true を返し、それ以外の場合は false を返します。
parseInt() は、括弧内の内容を整数に変換した後の値を返します。括弧が文字列の場合は、文字列の先頭の数値部分が整数に変換され、文字で始まる場合は「NaN」が返されます。
parseFloat()は括弧内の文字列を浮動小数点数に変換した値を返します。文字列の先頭が文字の場合は「NaN」を返します。
toString() 使用法: .toString(); オブジェクトを文字列に変換します。括弧内に値を指定すると、変換プロセス中にすべての値が特定の基数に変換されます。
escape() は、括弧内の文字列によってエンコードされた新しい文字列を返します。このエンコーディングは URL に適用されます。つまり、スペースは " " の形式で書き込まれます。 「 」はエンコードされていません。「 」をエンコードしたい場合は、escape('...', 1) を使用してください。
unescape() は、escape() の逆のプロセスです。括弧内の文字列を通常の文字列にデコードします。


関数の定義
いわゆる「関数」とは、値を返すオブジェクトまたはオブジェクトのメソッドです。
関数の種類
一般的な関数には、配列を構築できる Array() などのコンストラクター、グローバル オブジェクトのメソッドなどがあります。
カスタム関数
次のステートメントを使用して関数を定義します:

関数 関数名 ([パラメーター セット]) {
...
[return[ ] ; ]
...
}

このうち、関数の後と関数の最後に使用される中括弧は、関数全体が 1 つの文であっても省略できません。
関数名には変数名と同じ命名規則があります。つまり、関数名には文字、数字、アンダースコア、先頭の文字のみが含まれ、予約語などを使用して繰り返すことはできません。
パラメータセットはオプションですが、括弧が存在する必要があります。
パラメータは、関数の外部から関数の内部に情報を伝達するブリッジです。たとえば、関数に 3 の 3 乗を返すように要求したい場合は、関数に値「3」を知らせる必要があります。今回は、値を受け取る変数が必要です。この変数はパラメータと呼ばれます。
パラメータ セットは、a、b、c のように、カンマで区切られた 1 つ以上のパラメータのセットです。
関数内には 1 行以上のステートメントがあります。これらのステートメントはすぐには実行されませんが、他のプログラムが呼び出したときにのみ実行されます。これらのステートメントには「return」ステートメントが含まれる場合があります。関数の実行中に return ステートメントが見つかると、関数は実行を直ちに停止し、それを呼び出したプログラムに戻ります。 "return" の後に を指定すると、関数を終了するときに値が返されます。
関数内では、パラメーターを変数として直接使用したり、var ステートメントを使用して新しい変数を作成したりできますが、これらの変数を関数の外部のプロシージャから呼び出すことはできません。関数内の情報を外部呼び出しで使用できるようにするには、「return」戻り値を使用するか、グローバル変数を使用します。
グローバル変数 スクリプトの (関数内ではなく) 「ルート」にある「var」ステートメントによって定義される変数はグローバル変数であり、プロセス全体のどこからでも呼び出して変更できます。


function addAll(a, b, c) {
return a b c;
}

var total = addAll(3, 4, 5); >
この例では、a、b、c の 3 つのパラメーターを持つ「addAll」という関数を作成します。その機能は、3 つの数値を加算した結果を返すことです。関数の外では、「var total = addAll(3, 4, 5);」を使用して関数の戻り値を受け取ります。
多くの場合、関数には戻り値がありません。この種の関数は、Basic 言語では「Sub」、Pascal 言語では「プロシージャ」など、厳密性を重視する一部の言語では「プロシージャ」と呼ばれます。

属性
arguments 外部プログラムが関数を呼び出すときに指定されたパラメーターを反映する配列。使用法: 関数内で直接「引数」を呼び出します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。