mapとfilter
map
map()メソッドは、各配列の要素が所定の関数を呼び出す新しい配列を返します.
[mdn定義]
map
関数はfor문
と見なすことができる.map()
は関数なので、因子を受け入れます.パラメータに関数を追加して実現すればいいです.次のコードは、
number
が集合し、numbers
の配列を変数として宣言し、各番号に2を乗じたい場合は、まずnumbers.map()
を宣言し、関数をパラメータに入れ、私が繰り返す内容をパラメータに入れます.パラメータにnumbers.map((number) => {return number * 2})
の各numbers
を入れ、実行する関数number
を返します.const numbers = [1,2,3];
numbers.map((number) => {return number * 2})
// [2,4,6]
for文に変更した場合for(let i = 0; i < numbers.length; i++){
return numbers[i] * 2
}
このようなコードが表示されます.別の例を使用してテキストを並べてみると、
const names = ["마이클", "조던", "엘리스"];
names.map((name) => {return "반갑습니다 "+ name})
//["반갑습니다 마이클", "반갑습니다 조던", "반갑습니다 엘리스"]
number * 2
は配列のみを処理するためindexも存在するつまり.
const names = ["마이클", "조던", "엘리스"];
names.map((name, index) => {return `반갑습니다 ${index}번째에 있는 ${name}님`})[1]
// "반갑습니다 1번째에 있는 조던님"
このようなmap
が存在するため、インデックスを使用して機能を使用することができる.filter
filter()メソッドは、与えられた関数をテストするすべての要素を収集し、新しい配列に返します.
[mdn定義]
index
関数はfilter
の値のみをもたらすと考えられる.true
と同様に、すべての要素を繰り返し呼び出してcallback関数を呼び出すことで、map
の値しか得られないと考えられる.サンプルコードでさらに詳しく説明します.
const a = [1,2,3,4,5]
a.filter((x) => {return x % 2 === 0})
// [2,4]
コードが表示されている場合は、aという配列変数を宣言することができます.配列に偶数しか見つからない場合は、true
関数を適用し、aに偶数が見つかる関数を宣言することができます.では、新しい配列に戻ります.
Reference
この問題について(mapとfilter), 我々は、より多くの情報をここで見つけました https://velog.io/@hylee0320/React-Mapテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol