티스토리 뷰
map() 메소드
- 형태: arr.map(function(currentValue, index, array) {실행할 함수 내용; return 새로운 배열에 넣어 줄 요소 })
- 배열 내의 모든 요소 하나 하나에 순서대로 콜백함수를 실행한 결과를 모아서 새로운 배열을 반환
- callback 함수는 1) 처리할 요소, 2) 처리할 요소의 인덱스, 3) map을 호출한 배열 의 세 가지 파라미터를 가짐
- 처리할 요소 current Value 는 required
- 처리할 요소의 인덱스 I 는 optional
- map을 호출한 배열 array 는 optional
- map() 메소드는 호출한 배열의 값을 변형하지 않지만 콜백함수에 의해서 변형될 수는 있음
- map() 시작한 이후 배열에 추가되는 요소들은 콜백함수의 적용을 받지 않음
function solution(s) {
let wordList = s.split(" ");
return wordList.map(function(el) {
let word = '';
for (let i = 0; i < el.length; i++) {
i % 2 == 0 ? word += el[i].toUpperCase() : word += el[i].toLowerCase();
}
return word;
}).join(" ");
};
// s = "try hello world"
// let wordList = s.split.(" ");
// wordList = ['try', 'hello', 'world']
// map 대소문자 치환 콜백함수
// 1-1. 'try' => 'TrY'
// 1-2. wordList = ['TrY', 'hello', 'world']
// 2-1. 'hello' => 'HeLlO'
// 2-2. wordList = ['TrY', 'HeLlO', 'world']
// 3-1. 'world' => 'WoRlD'
// 3-2. wordList = ['TrY', 'HeLlO', 'WoRlD']
// wordList = ['TrY', 'HeLlO', 'WoRlD']
// wordList.join(" ") = 'TrY HeLlO WoRlD'
'Javascript & Typescript' 카테고리의 다른 글
[Javascript] reduce() method (0) | 2021.11.13 |
---|---|
[Javascript] filter() method (0) | 2021.11.12 |
[Javascript] slice() 메소드 (0) | 2021.11.12 |
[Javascript] splice() 메소드 (0) | 2021.11.11 |
[Javascript] querySelector() 를 활용하여 CSS 속성 변경하기 (0) | 2021.10.24 |