05. 配列を学ぼう
01. 配列リテラル
配列の型注釈:
配列の型注釈+ユニオン型:
列挙型:
02. 配列要素のアクセス
03. 配列のアクセス制限
04. 配列の分割代入
05. 配列のコピー
06. 配列要素の繰り返し
07. 配列を操作するメソッド
[a, b, c, …, z]
new Array(x);
配列の型注釈:
let 変数名: データ型[];
let 変数名: Array<データ型>;
配列の型注釈+ユニオン型:
let x: (number|string)[];
列挙型:
enum DayOfWeek{"Sun","Mon","Tue","Wed","Thu","Fri","Sat"}
02. 配列要素のアクセス
変数名[要素番号]
※要素番号は0~ 03. 配列のアクセス制限
読み取り専用:
変数名] readonly データ型[];
04. 配列の分割代入
2つの変数値の交換:
let a:number=1; let b:number=2; [a,b] = [b,a];途中の要素の取り出し:
const x:number[] = [1,2,3,4,5]; let[,,c,,e,f] = x; console.log(c); // 3 console.log(e); // 5 console.log(f); // undefined残りの要素(残余引数(Rest Parameters))
const x:number[] = [1,2,3,4,5]; let[a, ...b] = x; console.log(a); // 1 console.log(b); // [2,3,4,5]
05. 配列のコピー
"..." = スプレッド構文
配列のコピー:
配列のコピー:
const x: number[] = [1,2,3]; const y:number[] = [...x]; const z:number[] = [...x, ...y]; console.log(y); // [1,2,3] console.log(z); // [1,2,3,1,2,3]※ "const y:number[] = x" だと値コピーではなく参照コピー
06. 配列要素の繰り返し
配列の長さ:
for or文:
forEachメソッド:
繰り返し中止:
配列名.length
for or文:
for(let 変数名 of 配列名)
※for or文では型注釈が使えない forEachメソッド:
配列名.forEach(関数(要素){ })
繰り返し中止:
break;
※forEachでは使用不可07. 配列を操作するメソッド
push 末尾に要素を追加
pop 末尾の要素を削除しその要素を返す
shift 先頭から要素を削除しその要素を返す
unshift 先頭に要素を追加し追加後の要素数を返す
slice 指定した範囲の新しい配列を返す
join 指定した文字で配列要素を連結した文字列を返す
reverse 配列要素の並び順を逆転
fill したいした範囲を指定した値に置換
includes 指定した要素が配列に含まれているか
some 指定した条件を満たす要素が存在するか
forEach 配列の各要素に対して関数を実行
find 関数で指定した最初の要素を返す
findIndex 関数で指定した最初の要素位置を返す
filter 条件を満たす要素を集めた新しい要素を返す
sort 要素の位置を並び替え
map 新しい配列を作成
indexOf 指定した要素と一致する最初の要素の位置を返す
配列名.push(要素, 要素, …);
pop 末尾の要素を削除しその要素を返す
値 = 配列名.pop();
shift 先頭から要素を削除しその要素を返す
値 = 配列名.shift();
unshift 先頭に要素を追加し追加後の要素数を返す
要素数 = 配列名.unshift(要素, 要素, …);
slice 指定した範囲の新しい配列を返す
配列(コピー) = 配列名.slice(開始位置, 終了位置);
join 指定した文字で配列要素を連結した文字列を返す
文字列 = 配列名.join(区切り文字);
reverse 配列要素の並び順を逆転
配列(破壊) = 配列名.reverse();
fill したいした範囲を指定した値に置換
配列名.fill(値, 開始位置, 終了位置);
includes 指定した要素が配列に含まれているか
boolean = 配列名.includes(検索値, 検索開始位置);
some 指定した条件を満たす要素が存在するか
boolean = 配列名.some(関数(要素, 要素番号, 元の配列));
forEach 配列の各要素に対して関数を実行
find 関数で指定した最初の要素を返す
値(無ければundefined) = 配列名.find(関数(要素, 要素番号, 元の配列));
findIndex 関数で指定した最初の要素位置を返す
位置 = 配列名.find(関数(要素, 要素番号, 元の配列));
filter 条件を満たす要素を集めた新しい要素を返す
配列(コピー) = 配列名.filter(関数(要素, 要素番号, 元の配列));
sort 要素の位置を並び替え
配列名.soft(比較関数(比較対象a, 比較対象b));
map 新しい配列を作成
配列(コピー) = 配列名.map(関数(要素, 要素番号, 元の配列));
indexOf 指定した要素と一致する最初の要素の位置を返す
位置 = 配列名.indexOf(検索値, 検索開始位置);
TypeScript
0 件のコメント:
コメントを投稿