配列を操作するメソッド
配列について学習していた時、メソッドがたくさん出てきたのでまとめることにしました。
push
push: 配列の後ろに要素を追加する。このとき、はじめの配列は書き換えられる。配列.push(値)は、配列の要素数を返す。
const x:number[]=[1,2,6,7,9]
let y=x.push(10)
console.log(x) // [1,2,6,7,9,10]
console.log(y) // 6
pop
pop: 配列の後ろから要素をとってきて、その要素を返す。このとき、はじめの配列は書き換えられる。
const x:string[]=["a","b","c","g"];
let y=x.pop();
console.log(x); //["a","b","c"];
console.log(y); //"g"
shift
shift: 配列の先頭から要素をとってきて、その要素を返す。このとき、はじめの配列は書き換えられる。
const x:string[]=["a","b","c","g"];
let y=x.shift();
console.log(x); //["b","c","g"];
console.log(y); //"a"
unshift
unshift:配列の先頭に1つ以上の要素を追加する。このとき、はじめの配列は書き換えられる。配列.unsihft(値)は、配列の要素数を返す。
const x:string[]=["a","b","c","g"];
let y=x.unshift("h","j");
console.log(x); //['h', 'j', 'a', 'b', 'c', 'g']
console.log(y); //6
slice
slice:配列で指定した範囲の配列を返す。このとき、はじめの配列は書き換えられない。
const x:string[]=["a","b","c","g"];
let y=x.slice(0,2)
console.log(x); //['a', 'b', 'c', 'g']
console.log(y); //['a', 'b']
join
join:指定した文字で配列の要素間をつないで文字を作る。このとき、はじめの配列は書き換えられない。
const x:string[]=["a","b","c","g"];
let y=x.join("と")
console.log(x); //['a', 'b', 'c', 'g']
console.log(y); //aとbとcとg
reverse
reverse:配列の中身の順番を逆にする。このとき、はじめの配列は書き換えられる。
const x:string[]=["a","b","c","g"];
let y=x.reverse();
console.log(x); // ['g', 'c', 'b', 'a']
console.log(y); // ['g', 'c', 'b', 'a']
fill
fill:指定した範囲の配列の要素を指定した値に変更する。このとき、はじめの配列は書き換えられる。
const x:string[]=["a","b","c","g"];
let y=x.fill("あ",0,3);
console.log(x); // ['あ', 'あ', 'あ', 'g']
console.log(y); // ['あ', 'あ', 'あ', 'g']
includes
includes:指定した要素が配列にあるか調べる。このとき、はじめの配列は書き換えられない。
const x:string[]=["a","b","c","g"];
let y:boolean=x.includes("b")
console.log(x); // ['a', 'b', 'c', 'g']
console.log(y); // true
some
some:関数を使用して、指定した要素が1つ以上あるのか調べる。このとき、はじめの配列は書き換えられない。
const x:number[]=[43,22,64,26,90];
let y:boolean=x.some((e)=>e>=50);
console.log(x); // [43, 22, 64, 26, 90]
console.log(y); // true
forEach
forEach:配列の書く要素に指定した関数を実行する。
const x:number[]=[43,22,64,26,90];
let total:number=0;
x.forEach((e)=>total+=e);
console.log(total);//245
find
find:指定した条件を満たす値を配列の中から探し、はじめの要素を返す。このとき、はじめの配列は書き換えられない。
const x:number[]=[43,22,64,26,90];
let y=x.find((e)=>e===64);
console.log(x); // [43, 22, 64, 26, 90]
console.log(y); // 64
findIndex
findIndex:指定した条件を満たす値を配列の中から探し、はじめの要素の位置を返す。このとき、はじめの配列は書き換えられない。
const x:number[]=[43,22,64,26,90];
let y=x.findIndex((e)=>e===64);
console.log(x); // [43, 22, 64, 26, 90]
console.log(y); // 2
filter
filter:指定した条件を満たす値を配列の中から探し、その値で新たな配列を作成して返す。このとき、はじめの配列は書き換えられない。
const x:number[]=[43,22,64,26,90];
let y=x.filter((e)=>e>=64);
console.log(x); // [43, 22, 64, 26, 90]
console.log(y); // [64,90]
sort
sort:指定した関数により配列の順番を変える。このとき、はじめの配列は書き換えられる。b-aは大きい順、a-bは小さい順
const x:number[]=[43,22,64,26,90];
const z:number[]=[32,66,11,88,31];
let y=x.sort((a,b)=>b-a);
console.log(x); // [90, 64, 43, 26, 22]
console.log(y); // [90, 64, 43, 26, 22]
z.sort((a,b)=>a-b);
console.log(z);
map
map:配列の書く要素に対して関数を実行して、新たな配列を返す。このとき、はじめの配列は書き換えられない。
const x:number[]=[43,22,64,26,90];
let y=x.map((e)=>e+10);
console.log(x); [43, 22, 64, 26, 90]
console.log(y); [53, 32, 74, 36, 100]
indexof
indexOf:引数で指定した要素と一致する最初の要素を返す。このとき、はじめの配列は書き換えられない。
const x:number[]=[43,22,64,26,90];
let y=x.indexOf(26);
console.log(x);
console.log(y);
Discussion