map함수는 callbackFunction을 실행한 결과를 가지고 새로운 배열을 만들 때 사용한다.
array.map(callbackFunction(currenValue, index, array), thisArg)
filter, forEach와 같은 구문이다.
나와 있는 변수들은
currentValue : 배열 내 현재 값,
index : 배열 내 현재 값의 인덱스,
array : 현재 배열,
thisArg : callbackFunction 내에서 this로 사용될 값
const Upper =['A','B','C','D']
이러한 변수가 있다고 하자.
이때 모든 값에 숫자를 추가 하고 싶다면 map()함수를 이용하는 것이다. map() 함수는 모든 배열의 값에 Function을 실행하는 Method이다.
즉, Upper.map(...) 한다는 것은 days에 있는 모든 요일에 Function을 실행하고 Function에서 나온 값을 저장해서 새로운 배열로 만다는 것이다.
days.map()이 해당하는 Function에 주는건 Variable(변수)인데 이건 아무거나 가능하다. 예를들어 fool이 될 수도 있다.
const smilmingDays = Upper.map((up) => up.toLowerCase());
여기서 소문자로 변환된 알파벳을 Return 하게 되는 것이다.
이렇게 되면 up가 배열의 각각의 값을 가지게 된다.
Upper.map(...)은 return한 값으로 이루어진 배열을 return한다.
const low = Upper.map((str)=> str.toLowerCase())
console.log(low)
// ['a','b','c','d']