Array【配列】オブジェクト

目次: メモ コンストラクタ プロパティ メソッド 関連

メモ

コンストラクタ

構文説明

(1) [ [ item00 ] , [ item01 ] , [ … ] ]
(2) [ new ] Array ( [ item0 [ , item1 [ , … ] ] ] )
(3) [ new ] Array ( len )
コンストラクタ
(1) リテラル 指定
(2) 配列要素 指定
(3) 配列要素数 指定

プロパティ

プロパティ説明備考
Array[ @@species ] コンストラクタ定義 (下記 参照) [Symbol.species]
Array.prototype[ @@unscopables ] with ステートメントの除外プロパティ
Array.prototype.[ index ] 配列の要素 (index:0~)
(下記 参照)
要素数以上の要素設定で、配列の拡大
Array.prototype.constructor コンストラクタ定義 (下記 参照)
length配列の要素数 (下記 参照) 値設定で、配列の拡大・縮小
符号なし32ビット整数 (0 ~ 232-1)
範囲外の場合、RangeError 例外
Array.prototypeプロトタイプ (下記 参照)

メソッド

メソッド説明元の配列の変更配列生成
Array.prototype[ @@iterator ] ( ) 値イテレータ取得
Array.prototype. concat ( [ item1 [ , item2 [ , … ] ] ] ) 連結
Array.prototype. copyWithin ( target, start [ , end ] ) 内部コピーあり
Array.prototype.entries ( ) イテレータ取得
Array.prototype. every ( callbackfn [ , thisArg ] ) 有効判定 (全要素有効)コールバック関数による
Array.prototype. fill ( value [ , start [ , end ] ]) 指定値設定あり
Array.prototype. filter ( callbackfn [ , thisArg ] ) 抽出コールバック関数による
Array.prototype. find ( predicate [ , thisArg ] ) 値検索 (ユーザ関数)
Array.prototype. findIndex ( predicate [ , thisArg ] ) インデックス検索 (ユーザ関数)
Array.prototype. forEach ( callbackfn [ , thisArg ] ) 要素処理コールバック関数による
Array. from ( items [ , mapfn [ , thisArg ] ] ) オブジェクトから配列生成
Array.prototype. includes ( searchElement [ , fromIndex ] ) 存在確認
Array.prototype. indexOf ( searchElement [ , fromIndex ] ) 検索 (順方向)
Array. isArray ( arg ) 配列判定
Array.prototype. join ( [separator] ) 全要素文字列結合
Array.prototype.keys ( ) キーイテレータ取得
Array.prototype. lastIndexOf ( searchElement [ , fromIndex ] ) 検索 (逆方向)
Array.prototype. map ( callbackfn [ , thisArg ] ) 配列変換生成コールバック関数による
Array.of ( ...items ) 配列生成
Array.prototype. pop ()末尾要素削除あり
Array.prototype. push () 末尾要素追加あり
Array.prototype. reduce ( callbackfn [ , initialValue ] ) 隣接要素処理 (順方向)コールバック関数による
Array.prototype. reduceRight ( callbackfn [ , initialValue ] ) 隣接要素処理 (逆方向)コールバック関数による
Array.prototype. reverse ()要素反転あり
Array.prototype. shift ()先頭要素削除あり
Array.prototype. slice ( start [, end] ) 部分コピー
Array.prototype. some ( callbackfn [ , thisArg ] ) 有効判定 (一部要素有効)コールバック関数による
Array.prototype.sort ( [comparefn] ) ソートあり
Array.prototype. splice ( start, deleteCount [ , item1 [ , item2 [ , … ] ] ] ) 要素削除&挿入あり
Array.prototype.toLocaleString () 文字列変換 (ロケール)
Array.prototype. toString ()文字列変換
Array.prototype. unshift ( [ item1 [ , item2 [ , … ] ] ] ) 先頭要素挿入あり
Array.prototype.values () 値イテレータ取得

console.log(Array[Symbol.species]);
// 出力:function Array() { [native code] }
console.log(Array.prototype);
// 出力:Array[0]
// 出力:  concat: concat()
// 出力:  constructor: Array()
// 出力:  copyWithin: copyWithin()
// 出力:  entries: entries()
// 出力:  省略
// 出力:  toLocaleString: toLocaleString()
// 出力:  toString: toString()
// 出力:  unshift: unshift()
// 出力:  Symbol(Symbol.iterator): values()
// 出力:  Symbol(Symbol.unscopables): Object
// 出力:  __proto__: Object

var array = [ 1, 2, 3 ];
console.log(array.constructor);
// 出力:function Array() { [native code] }
console.log(array.length);
// 出力:3
array[9] = 10;
console.log(array.length, array);
// 出力:10 [1, 2, 3, 9: 10] 配列の拡大
array.length = 20;
console.log(array.length, array);
// 出力:20 [1, 2, 3, 9: 10] 配列の拡大
array.length = 3;
console.log(array.length, array);
// 出力:3 [1, 2, 3] 配列の縮小
【多次元配列】
var array = [ [1, 10], [2, 20], [3, 30] ];
console.log(array.length);
// 出力:3
for (var i = 0; i < array.length; i++) {
  for (var j = 0; j < array[i].length; j++) {
    console.log(("[" + i + "][" + j + "] = "), array[i][j]);
  }
}
// 出力:[0][0] =  1
// 出力:[0][1] =  10
// 出力:[1][0] =  2
// 出力:[1][1] =  20
// 出力:[2][0] =  3
// 出力:[2][1] =  30
【ジャグ配列】
var array = [ [1, 10], [2, 20, 30], [3, 30, 40, 50] ];
console.log(array.length);
for (var i = 0; i < array.length; i++) {
  for (var j = 0; j < array[i].length; j++) {
    console.log(("[" + i + "][" + j + "] = "), array[i][j]);
  }
}
// 出力:[0][0] =  1
// 出力:[0][1] =  10
// 出力:[1][0] =  2
// 出力:[1][1] =  20
// 出力:[1][2] =  30
// 出力:[2][0] =  3
// 出力:[2][1] =  30
// 出力:[2][2] =  40
// 出力:[2][3] =  50