티스토리 뷰

 

 

map() 메소드

 

 

  • 형태: arr.map(function(currentValue, index, array) {실행할 함수 내용; return 새로운 배열에 넣어 줄 요소 })
  • 배열 내의 모든 요소 하나 하나에 순서대로 콜백함수를 실행한 결과를 모아서 새로운 배열을 반환
  • callback 함수는 1) 처리할 요소, 2) 처리할 요소의 인덱스, 3) map을 호출한 배열 의 세 가지 파라미터를 가짐

 

  • 처리할 요소 current Valuerequired
  • 처리할 요소의 인덱스 Ioptional
  • map을 호출한 배열 arrayoptional

 

  • 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'

 

 

링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Total
Today
Yesterday