1. 配列演算
1. 配列の作成
var arrayObj = new Array(); //配列を作成します
var arrayObj = new Array([size]); //配列の上限ではなく長さを指定します。 >var arrayObj = new Array([element0[ , element1[, ...[, elementN]]]]);//配列を作成し、値を割り当てます
2 番目のメソッドは配列を作成し、実際の長さを指定します。上記のすべての場合、配列は可変長です。つまり、長さが 5 に指定されている場合でも、要素は指定された長さの範囲外に格納できることを意味します。それに応じて長さも変わります。
2. 配列要素へのアクセス
var testGetArrValue =arrayObj[1]; // 配列の要素の値を取得します
arrayObj[1]= "これが新しい値です" // 配列の要素に新しい値を割り当てます
3. 配列要素
arrayObj。 Push([item1 [item2 [. . . [itemN ]]]]);// 1 つ以上の新しい要素を配列の末尾に追加し、配列の新しい長さを返します
arrayObj.unshift([item1 [ item2 [. [itemN ]]]] );// まず、1 つ以上の新しい要素を配列に追加し、配列の新しい長さが返されます。 .splice(insertPos,0,[item1[, item2[, . . . [ ,itemN]]]]);//配列の指定された位置に 1 つ以上の新しい要素を挿入します。挿入位置の要素は自動的に挿入されます。元に戻され、「」が返されます。
4. 配列要素の削除
arrayObj.shift(); //最初の要素を削除して要素の値を返します。自動的に前方に移動
arrayObj.splice(deletePos,deleteCount); //指定された位置 deletePos から指定された数の deleteCount 要素を削除し、削除された要素を配列形式で返します
5。配列のインターセプトとマージ / /配列の一部を配列形式で返します。end を省略した場合は、start 以降の要素がすべてコピーされます。
arrayObj.concat( [item1[, item2[, . [,itemN]] ]]); // 複数の配列 (文字列、または配列と文字列の混合) を 1 つの配列に連結して返します。 >
6. 配列 コードをコピー
arrayObj.slice(0); //return 配列のコピー配列。これは新しい配列であり、
arrayObj.concat(); // 配列のコピー配列を返します。これは新しい配列であり、
7 を指していないことに注意してください。 配列要素の並べ替え
arrayObj.reverse(); / / 要素を反転し (最初から最後、最後から前)、配列アドレスを返します。
arrayObj .sort(); // 配列要素をソートし、配列アドレスを返します
8 、配列要素の文字列化
arrayObj.join(separator ); //この文字列は、配列の各要素の値をセパレータで区切って結合して返します。
toLocaleString、toString、valueOf: は、通常は使用されない結合の特別な使用法と見なすことができます
2. 配列オブジェクトの 3 つの属性
1. 長さ属性
Length 属性は配列の長さ、つまり配列内の要素の数を表します。配列のインデックスは常に 0 から始まるため、配列の上限と下限はそれぞれ 0 と length-1 になります。他のほとんどの言語とは異なり、JavaScript 配列の長さプロパティは可変であるため、特別な注意が必要です。 length 属性がより大きく設定されても、実際には配列全体の状態は変化しません。length 属性が元の値よりも小さく設定されている場合、元の配列内の要素のインデックスがそれ以上になるだけです。長さはすべての値が失われます。以下は、長さ属性の変更を示す例です:
var arr= [12,23,5,3,25,98,76,54,56,76];
//10 個の数値を含む配列を定義します
alert(arr.length); // 配列の長さを表示 10
arr.length=12; // 配列の長さを増やします
alert(arr.length) // 配列の長さが 12alert(arr[8]); //9 番目の要素の値、つまり 56
arr.length=5 を表示します。 //配列の長さを 5 に減らし、それ以上のインデックスを持つ要素を表示します。 5 つは破棄されます
alert(arr[8]) ; //9 番目の要素が「未定義」になったことを示します
arr.length=10; //配列の長さを 10 に戻します
alert(arr[ 8]); //長さは 10 に復元されますが、9 番目の要素は復元できず、「未定義」と表示されます。
上記のコードから、長さ属性の性質が明確にわかります。 。ただし、長さオブジェクトは明示的に設定できるだけでなく、暗黙的に変更することもできます。同様に、JavaScript で未定義の変数を使用することもできます (長さ以上のインデックスを持つ要素を参照します)。この場合、length 属性の値は に設定されます。使用される要素インデックスの値に 1 を加算します。たとえば、次のコード:
コード をコピーします。 コードは次のとおりです:
var arr=[12,23 ,5,3,25,98,76,54,56,76];
alert(arr.length);
arr[15]=34;
alert(arr .length);
このコードでは、最初に 10 個の数値を含む配列も定義されています。アラート ステートメントから、その長さが 10 であることがわかります。次に、インデックス 15 の要素が使用され、値 15、つまり arr[15]=34 が割り当てられます。このとき、alert ステートメントは配列の長さを出力するために使用され、結果は 16 になります。いずれにしても、これは、厳密に型指定されたプログラミングに慣れている開発者にとっては驚くべき機能です。実際、 new Array() を使用して作成された配列の初期の長さは 0 です。配列の長さが変化するのは、未定義の要素の操作です。
上記の紹介からわかるように、length 属性は非常に魔法のようなもので、これを使用すると配列の容量を簡単に増減できます。したがって、長さ属性を深く理解すると、開発プロセス中に長さ属性を柔軟に使用するのに役立ちます。
2. プロトタイプ属性
オブジェクト型のプロトタイプへの参照を返します。プロトタイププロパティはオブジェクトに共通です。
objectName.prototype
objectName パラメーターは次のとおりです。オブジェクトのオブジェクト名。
説明: プロトタイプ属性を使用して、オブジェクトのクラスの基本関数のセットを提供します。 オブジェクトの新しいインスタンスは、オブジェクトのプロトタイプに割り当てられた操作を「継承」します。
配列オブジェクトの場合、次の例は、prototype 属性の使用法を示しています。
配列内の最大要素値を返すメソッドを配列オブジェクトに追加します。これを実現するには、関数を宣言し、それを Array.prototype に追加して使用します。
function array_max( )
{
var i, max = this[0];
for (i = 1; i
{
if (max
max = this[i];
}
最大値を返します;
}
Array.prototype.max = array_max;
var x = 新しい配列(1, 2, 3, 4, 5, 6);
var y = x.max( );
このコードが実行されると、y は配列 x の最大値、つまり 6 を保持します。
3. コンストラクター属性
はオブジェクトを作成する関数を表します。
object.constructor //object はオブジェクトまたは関数の名前です。
説明: コンストラクター プロパティは、プロトタイプを持つすべてのオブジェクトのメンバーです。これらには、Global オブジェクトと Math オブジェクトを除くすべての JScript ネイティブ オブジェクトが含まれます。コンストラクター プロパティは、特定のオブジェクト インスタンスを構築する関数への参照を保持します。
例:
x = new String("こんにちは");
if (x.constructor == String) // 処理(条件が true )。
または
関数 MyFunc {
// 関数本体。
}
y = 新しい MyFunc;
if (y.constructor == MyFunc) // 処理(条件が true )。
3. 配列操作によく使用される関数とメソッド
toString(): 配列を文字列に変換します
toLocaleString(): 配列を文字列に変換します
join(): 配列をシンボリックに接続された文字列に変換します
shift (): 配列を移動します配列の先頭から要素を取り出す
unshift(): 配列の先頭に要素を挿入
pop(): 配列の末尾から要素を削除
push(): 要素を追加配列の最後へ
concat(): 配列に要素を追加します。
slice(): 配列の一部を返します。
reverse(): 配列を逆ソートします。
sort(): 配列をソートします。 array
splice(): 配列要素
を挿入、削除、または置換します。