오늘은 (☞゚ヮ゚)☞ Map.
예시는 youtube 상식이 코딩 채널의 Map메서드 강의영상 참고하였다.
배열 요소로 받은 함수를 배열의 요소별로 한 번씩 실행하고
마지막에는 그 함수가 반환한 값으로 새로운 배열을 생성
배열 요소로 넘긴 함수에는 배열 요소 세 개(value, index, array)가 전달된다.
예제1)
const numbers = [1,2,3,4,5]; let newNumbers = numbers.map(number=> number *2); console.log(newNumbers); // [2,4,6,8,10] . let newNumbers1 = numbers.map(function(number){ return number * 2 }); console.log(newNumbers1); // [2,4,6,8,10] . function mutiplyTwo (number) { return number * 2; } . let newNumbers2 = numbers.map(mutiplyTwo); console.log(newNumbers2); // [2,4,6,8,10]
예제2)
const students = [ {id : 1 , name : "bonnie"}, {id : 2 , name : "julia"}, {id : 3 , name : "kate"}, {id : 4 , name : "gaga"} ]; . let names = students.map(student => student.name); console.log(names); //["bonnie","julia","kate","gaga"] . const numbers = [1, 2, 3, 4, 5, 6]; const numbersReverse = numbers.map(number => number * 2).reverse(); console.log(numbersReverse); // [12, 10, 8, 6, 4, 2]
예제3)
const numbers = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; const newNumbers = numbers.map(array => array.map(number => number * 2)); console.log(newNumbers); // (3) [array(3), array(3), array(3)] //inside - //0 : (3) [2, 4, 6] //1 : (3) [8, 10, 12] //2 : (3) [14, 16, 18]
예제4)
let alphabet = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z" ] alphabet = alphabet.map(function (x) { return x.toUpperCase() }) //"A", "B", "C", "D" ...."Z" . let answer = ["black", "white", "gray", "silver", "maroon", "red", "purple", "fushsia", "green", "lime", "olive", "yellow", "navy", "blue", "teal", "aqua" ] // answer = answer.map(function(x){ return x.toUpperCase() }) 결과는 같음 answer = answer.map(x => x.toUpperCase()); //answer배열의 값이 대문자로 출력