- トップページ
- 特集PC技術
- とあるJavaScriptの情報図書
- 【JavaScript】[ECMAScript] Arrayオブジェクト
とあるJavaScriptの情報図書
【JavaScript】[ECMAScript] Arrayオブジェクト
今回はJavaScriptの組み込みオブジェクトの1つについて解説をします。
実行されているECMAScriptによっては実行できないものがありますので注意しましょう
配列関連の機能を持つオブジェクトです。
目次
[1] ECMAScript v1 対応
ECMAScript v1 に対応している機能は以下のとおりです。
join - 配列要素を指定文字で分割し連結
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.join("/"));
revers - 配列の逆順にする
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.reverse()); document.writeln(array1);
sort - 配列を昇順に並び替え
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.sort()); document.writeln(array1);
length - 配列のサイズを取得
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.length);
toString - 文字列に変換
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.toString());
[2] ECMAScript v3 対応
ECMAScript v3 に対応している機能は以下のとおりです。
concat - 配列同士を連結する
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; var array2 = ["ホプ","シィ","ヘヨ","ウコソ"]; document.writeln(array1.concat(array2));
slice - 指定した範囲を抜き出す
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.slice(3)); document.writeln(array1.slice(1,2));
splice - 配列後の要素を置き換える
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.splice(1,2,"sii","heyo")); document.writeln(array1);
pop - 配列の最後の要素を取得して削除
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.pop()); document.writeln(array1);
push - 配列の最後の要素の次へ追加
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.push("よろしく")); document.writeln(array1);
shift - 配列の先頭の要素を取得して削除
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.shift()); document.writeln(array1);
unshift - 配列の先頭の要素に追加
var array1 = ["ほぷ","しぃ","へよ","うこそ"]; document.writeln(array1.unshift("ホプシー")); document.writeln(array1);
[3] ECMAScript v5 対応
ECMAScript v5 に対応している機能は以下のとおりです。
foreach - 全ての配列の要素に指定した関数を実行する
var array1 = [1,2,3,4,5]; var array2 = [2,4,6,8,10]; // 全ての配列の要素にcallback関数で指定した関数を実行する array1.forEach(multiplication); array2.forEach(multiplication); // foreachで使用するcallback関数 // value には配列の値 // index には配列の添え時 // array には配列そのもの function multiplication(value, index, array){ document.writeln(value * 2); }
some - 配列を関数に渡し、1つでも条件を満たすときtrueを返す
var array1 = [1,2,3,4,5]; var array2 = [2,4,6,8,10]; // 全ての配列の要素を調べて、1つでも条件を満たしたときtrueになる document.writeln(array1.some(check)); document.writeln(array2.some(check)); // someで使用するcallback関数 // value には配列の値 // index には配列の添え時 // array には配列そのもの function check(value, index, array){ return value < 2; }
every - 配列を関数に渡し、すべての値が条件を満たすときtrueを返す
var array1 = [1,2,3,4,5]; var array2 = [2,4,6,8,10]; // 全ての配列の要素を調べて全ての配列の値が条件を満たしたときtrueになる document.writeln(array1.every(check)); document.writeln(array2.every(check)); // everyで使用するcallback関数 // value には配列の値 // index には配列の添え時 // array には配列そのもの function check(value, index, array){ return value < 6; }
map - 配列を関数に渡し、新しい配列を作成する
var array1 = [1,2,3,4,5]; var array2 = [2,4,6,8,10]; // 全ての配列の要素にcallback関数で指定した関数を実行し、新しい配列を生成する document.writeln(array1.map(square)); document.writeln(array2.map(square)); // mapで使用するcallback関数 // value には配列の値 // index には配列の添え時 // array には配列そのもの function square(value, index, array){ return value * value; }
filter - 配列を関数に渡し、条件に満たしたものから新しい配列を作成する
var array1 = [1,2,3,4,5]; var array2 = [2,4,6,8,10]; // 全ての配列の要素にcallback関数で指定した関数を実行 // 条件を満たしたものだけで新しい配列を生成 document.writeln(array1.filter(remove)); document.writeln(array2.filter(remove)); // removeで使用するcallback関数 // value には配列の値 // index には配列の添え時 // array には配列そのもの function remove(value, index, array){ return (value % 2 == 0); }
reduce - 配列の最初の要素から、関数を呼び出した結果を渡し、最後の結果を取得
var array1 = [1,2,3,4,5]; var array2 = [2,4,6,8,10]; // 全ての配列の要素を調べて、1つでも条件を満たしたときtrueになる document.writeln(array1.reduce(add)); document.writeln(array2.reduce(add)); // reduceで使用するcallback関数(配列の値を全て合計する関数) // value1 は1つ前の配列の結果 // value2 は現在の配列の要素 function add(value1, value2){ return value1 + value2; }
reduceRight - 配列の最後の要素から、関数を呼び出した結果を渡し、最後の結果を取得
var array1 = [1,2,3,4,5]; var array2 = [2,4,6,8,10]; // 全ての配列の要素を調べて、1つでも条件を満たしたときtrueになる document.writeln(array1.reduceRight(add)); document.writeln(array2.reduceRight(add)); // reduceで使用するcallback関数(配列の値を全て合計する関数) // value1 は1つ前の配列の結果 // value2 は現在の配列の要素 function add(value1, value2){ return value1 + value2; }
indexOf - 引数で指定したデータがある配列の添え字を取得する(最初から)
var array1 = [1,2,3,4,5]; document.writeln(array1.indexOf(2));
lastIndexOf - 引数で指定したデータがある配列の添え字を取得する(最後から)
var array1 = [1,2,3,4,5]; document.writeln(array1.lastIndexOf(2));
[4] 更新履歴
日付 | 詳細 |
---|---|
2011/10/04 | コンテンツ公開 |
コメントの投稿
トラックバックURL
http://www.isl.ne.jp/cgi-bin/mt/mt-tb.cgi/1684