JavaScript 配列(Array)総まとめ

どうもかわうそです!

今日は『JavaScript 配列(array)総まとめ』したいと思います。

できる限りシンプルによく使うものをまとめました。

JavaScript 配列(Array)の基本

配列(Array)の基礎

配列リテラル

ブラケット[]で囲みます。

配列の呼び出し

配列[index]で呼び出します。

配列に格納できる要素

文字列、 数字 、変数、オブジェクト(なんでもok)

配列(Array)の作成

リテラル表現で配列作成

new-コンストラクターを使用した配列作成

空の配列作成

指定サイズの配列作成

[alert title=”注意”]上記は『長さが5の配列(indexが0~4)を作成』するという指示です。しかし、5の要素を持つ配列を作成する、と見えなくもないので、表現としてはややこしいです。配列を作成する際は極力リテラル[]を使用しましょう。[/alert]

配列(Array)の使用方法

length

配列の長さを調べます

[box class=”box3″]配列.length[/box]

isArray

オブジェクトが配列かどうかを調べます。

[box class=”box3″]Array.isArray(配列)[/box]

toString

要素,要素,….に文字列変換します

[box class=”box3″]配列.toString()[/box]

toLocaleString

配列をlocaleに合わせた文字列に変換します

[box class=”box3″]配列.toLocaleString()[/box]

[memo title=”locale-ロケール”]システムにおける地域、国、言語、時刻、通貨の設定のこと。使っているコンピュータの基礎設定ってところです[/memo]

indexOf

指定要素にマッチした最初の要素のキー(index)を取得

[box class=”box3″]配列.indexOf( value , start)[/box]

[memo title=”検索開始位置”]第二引数にstart番号を指定すると、検索開始位置を指定できます[/memo]

[memo title=”マッチしない場合”]マッチする要素がない場合は-1を返します[/memo]

lastIndexOf

指定要素にマッチした最後の要素のキー(index)を取得
indexOfは先頭から調べるのに対し、lastIndexOfは後ろから先頭へ調べていきます。

[box class=”box3″]配列.lastIndexOf( value , start)[/box]

[memo title=”indexOfとの違い”]lastINdexOfは後ろの要素から先頭に向かって調べます。引数に指定したindexは、後ろから見て何番目まで検索するかを指定できます。しかし、返す戻り値の値は、マッチした要素が配列の中で何番目か?というindexです。しっかり理解しておきましょう。[/memo]

concat

配列同士を結合

[memo title=”MEMO”]array1.concat(array2)で、array1にarray2を結合[/memo]

join

配列内の要素を、区切り文字(x)で結合

slice

start+1~end番目の要素を部分配列として抜き出します。

引数が1つの場合は、start番号以降の全ての要素を抜き出します。

[box class=”box3″]配列.slice( start, end)[/box]

[memo title=”MEMO”]マイナスの数字を使うと、後ろから数えてくれます。[/memo]

[alert title=”注意”]スタート番号+1から始まる点に注意してください。[/alert]

splice

配列に複数要素を追加、置換、削除するメソッドです。

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

ややこしそうですが、構文さえ覚えれば簡単です!

[box class=”box3″]配列.solice( index , many , value1, value2 )[/box]

  • index 要素抽出開始位置
  • many 取り出す要素数
  • value1、2 削除部分に挿入する要素

実際に見てみましょう。

valueを入れなければ、指定した要素を配列から削除してくれますね。
次はvalueを差し込んでみましょう。

引数manyを0にすれば、indexで指定した位置にvalueを挿入することもできます

copyWithin

[box class=”box3″]配列.copyWithin( target , start ,end ) [/box]

任意の区間(start~endの直前)の要素をコピーし、任意の位置(target)から貼り付けます。

[memo title=”MEMO”]マイナスの数字を使うと、後ろから数えてくれます。[/memo]

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

fill

配列内 start+1 ~ end の要素をvalueで置換できます。

[box class=”box3″]配列.fill( value , start , end)[/box]

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

pop

配列の最後の要素を取得し削除できます

[box class=”box3″]配列.pop()[/box]

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

shit

配列の最初の要素を取得し削除できます

[box class=”box3″]配列.shift()[/box]

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

push

配列の最後に指定要素を追加し、 配列の長さを返します

[box class=”box3″]配列.push( value1 , value2 …)[/box]

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

unshift

配列の最初に指定要素を追加し、配列の長さを返します

[box class=”box3″]配列.unshift( value1 , value2 …)[/box]

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

reverse

配列を逆順に並び替えます

[box class=”box3″]配列.reverse()[/box]

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

sort

配列内の要素を昇順に並び替えます

[box class=”box3″]配列.sort()[/box]

[alert title=”破壊的メソッド”]元の配列自体を変更してしまう破壊的メソッドです。[/alert]

forEach

配列内の要素を順番に取り出し、コールバック関数に渡し、順番に実行する。

[box class=”box3″]配列.forEach( function( value, index, array){
処理;
});[/box]

このとき引数arrayDataはarrayの中身を受け取っています。

map

配列を指定した関数で加工できます

[box class=”box3″]配列.map( function( value, index, array){
処理;
});[/box]

some

配列内に指定した要素があるかどうかを判定します

[box class=”box3″]配列.some( function( value, index, array){
処理;
});[/box]

filter

条件に合致した要素で配列を生成

[box class=”box3″]配列.filter( function( value, index, array){
処理;
});[/box]

find

関数が最初にtrueを返した要素を取得

[box class=”box3″]配列.find( function( value, index, array){
処理;
});[/box]

findIndex

関数が最初にtrueを返した要素のインデックスを取得

[box class=”box3″]配列.findIndex( function( value, index, array){
処理;
});[/box]

フォローする