arrayについて
よく使うarrayですが、改めて勉強します。
array(配列)
arrayとはデータ(プリミティブまたはオブジェクトのどちらか)が順序付けされて集まったものです。
const testArray = [1, 2, 3, 4, 5];
要素を取り出す
配列の末尾の値
const lastNum = testArray.length - 1;
console.log(testArray[lastNum]); //配列の最後の値
値を追加する(push,unshift)
- 末尾に値を追加する
testArray.push(6);
- 先頭に追加する
testArray.unshift(0);
値を消す(shift,splice,pop)
- 先頭の値を消す
console.shift(testArray);
- 特定の値を消したい場合
array.splice(2, 1); //配列の2番目の値を1つ削除する
- 末尾の値を消す
testArray.pop();
map(要素ひとつひとつを取り出す)
arrayのオブジェクトはmap関数を持っています。
const testArray = [1, 2, 3, 4, 5];
testArray.map((elem ,index) => elem);
// [1, 2, 3, 4, 5]
↑要素ひとつひとつを取り出して、最後はarrayを返してくれます。
arrayで返す時に文字列を追加することもできる
[1,2,3].map((elem, index) => {
const key = `property${elem}`; //一度keyという名前で文字列を追加しから
return {[key]: elem} //arrayに返す!
});
注意
一度変数に入れずにarrayに追加しようとするとerrorになりました。
some(true / falseを返す)
some()は、配列のいずれかの要素が指定した条件を満たしているか否かをtrue / false で返すメソッドです。
1つでも条件を満たしている要素があれば、trueを返します。
任意の値が含まれていたら即座に処理が終わります。
[1,2,3,4,3].some(elem => elem === 3) // 3がきたらtrueを返し、即処理終了
// もっと基礎的に書くと...
const test = [1,2,3,4,5];
const exists =test.includes(3); //3がtestの配列の中にあればtrue!
console.log(exists); // => true
↑これで実行するとtrueが返ってくる
どの値にも一致しなかった場合は、最後まで比較したあと、falseを返します。
これのメリットは、左から数えて1番最初の3が来た時にすぐに処理が終わることです。
パフォーマンスを意識したいときなどによく使います。
includes(true / falseを返す)
includesは特定の要素が配列に含まれているかどうかをtrue / false で返します。
const test = [1,2,3,4,5];
test.includes(5); // ture
test.includes(10); //false
slice(指定した部分の配列の一部をコピーして、新しい配列を返す )
slice() メソッドは begin から end まで選択された配列の一部をシャローコピーして、新しい配列オブジェクトを返します (end は含まれません)。元の配列は変更されません。
const test = ['a', 'b', 'c', 'd', 'e'];
const sliceArr = test.slice(0, 1); // ['a']
const sliceArr_2 = test.slice(0, 2); // ['a', 'b']
const sliceArr_3 = test.slice(2, 3); // ['c']
fillter(条件に一致した値のみを抽出する)
配列からある特定の条件下で条件に一致した値のみを抽出して、配列を返します。
一致しなかったものは配列には含まれません。
const test = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const filterArr =test.filter(elem => elem > 1);
console.log(filterArr ); //[2, 3, 4, 5, 6, 7, 8, 9, 10]
// もっと基礎的に書くと...
const fillterArr_2 = test.filter(function( value ) {
return value < 5; //5よりも小さい数値だけを抽出
});
console.log(fillterArr_2 ); //[1, 2, 3, 4,]
連想配列の配列の要素を条件にする場合
const arr2 = [
{ id: 1, name: 'test', height: 160},
{ id: 2, name: 'testさん', height: 170},
{ id: 3, name: 'test君', height: 180},
{ id: 4, name: 'testちゃん', height: 190}
];
// heightが180以上を抽出したい場合
const filterArr2 = arr2.filter(elem => elem.height >= 180); // id: 3、4が取れるはず
Author And Source
この問題について(arrayについて), 我々は、より多くの情報をここで見つけました https://qiita.com/makkkiy/items/53467fc3cc6eb0e972ed著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .