32.配列と方法-3


filter

filterfindとは異なり、1つの要素ではなく複数の要素を探して新しい配列に戻る方法です.
let arr = [1, 2, 3, 4, 5, 6];

let result = arr.filter((item, index, array) => {
	item % 2 === 0;
});
console.log(result); // [2, 4, 6]
パラメータとして受信した関数を実行し、要素に参照が表示されたら、新しい配列に追加して返します.

map

mapは、使用頻度が極めて高い方法の1つである.mapは、すべての要素に論理(関数)を適用します.
適用可能な要素を持つ新しい配置を返します.
let arr = [1, 2, 3, 4];

let result = arr.map((item, index array) => {
  return item * 2;
});

console.log(arr); // [1, 2, 3, 4]
console.log(result); // [2, 4, 6, 8]

reduceとreduceRight


アレイ内の要素について繰り返し動作するために、forEachfor..of、およびforを使用することができる.
作業を繰り返して新しいレイアウトに戻るには、mapを使用します.
アレイ内の要素を論理的に加算する必要がある場合は、使用可能な機能があります.reduceです.
配列を求めるために使用されるすべての要素の和、またはすべての乗算を求めるように、配列された要素を用いて누적값が得られる.
let arr = [1, 2, 3, 4, 5];

let result = arr.reduce((acc, cur, idx, arr) => {
  acc + cur;
});

console.log(result); // 15;
reduceは、パラメータとしてコールバック関数を受け入れ、累積値の初期値を決定できる値を受け入れることができる.
そして、コールバック関数を渡すとき、この関数は4つのパラメータを受け入れ、最初から누적값, 현재요소, 현재요소의 인덱스, 배열と入力することができる.次に、関数が返す値が積算値に格納されます.

sortメソッド


配列内の要素をソートするときにsortメソッドを使用します.
sort法はmutableであるため,元の配列が変化する.
もちろん、戻り値が存在し、戻り値でソートされた新しい配列が返されます.すなわち、元の配列と返される新しい配列は同じ値を有する.
let arr = ['c', 'e', 'a', 'd', 'b'];
let result = arr.sort();

console.log(arr); // ['a', 'b', 'c', 'd', 'e'];
console.log(result); // ['a', 'b', 'c', 'd', 'e'];
上図に示すように、昇順で並べ替えられていることがわかります.
ここでは、numberのタイプをソートする際の利点があります.
let arr = [13, 4, 7, 22, 9];

arr.sort();
console.log(arr)' // [13, 22, 4, 7, 9];
上のように変に並んでいます.
これは、すぐに文字列に変更され、ソートされるためです.
では、数字を並べ替えるためには、何をすべきか…
パラメータで関数を渡せばいいです.
関数を渡す場合、パラメータと戻り値には一定のルールがあります.
function callback(a, b) {
  if(a > b) return 1; // 첫번째 값이 두번째 값보다 큰 경우
  if(a == b) return 0; // 두값이 같을 경우
  if(a < b) return -1; // 첫번째 값이 두번째 값보다 작은 경우
}
上の関数をパラメータとして入れれば,昇順配列を求めることができる.逆に降順を行うためには,リターン値を反転させるだけでよい.

リバースメソッド


フィーチャの配置方法を反転します.
let arr = [1, 2, 3];
arr.reverse();
console.log(arr); // [3, 2, 1];

splitとjoinメソッド


文字を含む変数があるとします.
この文字にはルールがあります
一定区間に,があると仮定すると,この,を用いて文字を配列に分けることができる.
この場合の使用方法はsplitです.
let str = 'hello, my, name is, quakka';

let arr = str.split(', ');
console.log(arr); // ['hello', 'my', 'name is', 'quakka']
逆に、配列された要素を文字列に結合したい場合があります.
このときjoinの方法で貼り付けます.
let arr = ['one', 'two', 'three', 'four'];
let result = arr.join(' ');
console.log(result); // 'one two three four'
パラメータにスペースを追加し、要素間にスペースを追加して文字列に接続します.

typeof [] === Array ???


通常、typeof演算子を使用して、任意のデータ型を理解します.
しかし、大きな角度から見ると、配列はオブジェクトです.したがって,typeofを用いた結果もobjectであった.
では、並ぶかどうかを見分けるためには、どうすればいいのでしょうか.Array.isArray(배열)を使用する場合、配列の方法を使用すればよい.
パラメータが配列である場合、trueまたはfalseが返されます.