オブジェクトが配列であるかどうかを判断します:instanceof、Array.isArray()
Web ページまたはグローバル スコープの場合は、instanceof 演算子を使用できます。
if(valueinstanceofArray){ //値が配列かどうかを判定します
}
instanceof 演算子は、グローバル実行環境が 1 つだけであることを前提としています。Web ページに複数のフレームが含まれている場合は、ECMAScript5 の新しい Array.isArray() メソッドが使用されます。
if(Array.isArray(value)){//value が配列かどうかを判断します
}
Array.isArray() メソッドでサポートされるブラウザには、IE9、Firefor 4、Safari5、Opera 10.5、および Chrome が含まれます。
このメソッドを実装していないブラウザで配列を確認したい場合は、次を使用します:
if(Object.prototype.toString.call(value)=="[オブジェクト配列]"){
}
配列を文字列に変換: toLocaleString()、toString()、valueOf()、join()
配列要素を追加および削除するメソッド: Push()、pop()、unshift()、shift()
push() メソッドは、任意の数のパラメータを受け入れ、それらを配列の末尾に 1 つずつ追加し、変更された配列の長さを返すことができます。
pop() メソッドは、配列の末尾から最後の項目を削除し、削除された項目を返します。
unshift() メソッドは、配列の先頭に任意の数のパラメーターを追加し、新しい配列の長さを返します。
shift() メソッドは、配列内の最初の項目を削除し、削除された項目を返します。
ソートメソッド: reverse() と sort()
reverse() メソッドは、配列項の順序を逆にし、配列自体を操作します。
sort() メソッドは、デフォルトで配列項目を昇順にソートし、配列自体を操作します。
sort() メソッドは比較関数を渡すこともできます。
比較関数は、最初のパラメーターが 2 番目のパラメーターの前にある必要がある場合は負の数を返し、2 つのパラメーターが等しい場合は 0 を返し、最初のパラメーターが 2 番目のパラメーターの後にある必要がある場合は正の数を返します。
操作メソッド: concat()、slice()、splice()
concat() メソッドは、2 つ以上の配列を連結するために使用されます。このメソッドは既存の配列を変更せず、単に連結された配列のコピーを返します。新しい配列を返します。
slice() メソッドは、既存の配列から選択された要素を返します。 arrayObject の要素を最初から最後まで (排他的に) 含む新しい配列を返します。
splice() メソッドは、配列に項目を追加または配列から削除し、削除された項目を返します。配列自体を操作します。
最初のパラメータ: 開始位置、2 番目のパラメータ: インターセプトの数、3 番目のパラメータ: 追加される新しい要素。
位置メソッド:indexOf()、lastIndexOf()
ECMAScript5 はブラウザをサポートするメソッドを提供します: IE9、Firefox 2、Safari 3、Opera 9.5、Chrome
indexOf() メソッドは、文字列内で指定された文字列値が最初に出現する位置を返します。
lastIndexOf() メソッドは、文字列内の指定された位置を後ろから前に検索して、指定された文字列値の最後の出現位置を返すことができます。
パラメータが 1 つの場合: 検索する値を表し、インデックス位置を返します (0 から開始) パラメータが 2 つの場合: 最初のパラメータは開始位置を表し、2 番目のパラメータは値を表します。見つかること。
alert(numbers.IndexOf(4,4));//5
alert(numbers.lastIndexOf(4,4));//3
反復メソッド:every()、filter()、forEach()、map()、some()
ECMAScript5 はブラウザをサポートするメソッドを提供します: IE9、Firefox 2、Safari 3、Opera 9.5、Chrome
every(): 配列内の各項目に対して指定された関数を実行し、関数が各項目に対して true を返す場合は true を返します。
filter(): 配列内の各項目に対して指定された関数を実行し、関数が true を返す項目の配列を返します。
forEach(): 配列内の各項目に対して指定された関数を実行します。このメソッドには戻り値がありません。
map(): 配列内の各項目に対して指定された関数を実行し、各関数呼び出しの結果で構成される配列を返します。
some(): 配列内の各項目に対して指定された関数を実行し、関数がいずれかの項目に対して true を返した場合は true を返します。
上記の関数はいずれも、配列に含まれる値を変更しません。
//map()
var mapResult=numbers.map(function(item,index,array){
(アイテム*2) を返す
})
alert(mapResult);//[2,4,6,8,10,8,6,4,2]
//forEach()
numbers.forEach(function(item,index,array){
//戻り値なしで演算を実行
})
マージメソッド:reduce()、reduceRight()
ECMAScript5 はブラウザをサポートするメソッドを提供します: IE9、Firefox 3、Safari 4、Opera 10.5、Chrome
どちらのメソッドも配列のすべての項目を反復処理して、最終的な戻り値を構築します。 reduce() メソッドは配列内の最初の項目から開始され、reduceRight() メソッドは配列の末尾から開始されます。
以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。