function solution(s) {
let textChange = (text,idx) => idx % 2 === 0 ? text.toUpperCase() : text.toLowerCase();
let answer = s.split(' ').map((a,b) => a.split('').map((text, idx) => textChange(text,idx)).join('')).join(' ');
console.log(answer);
return answer;
}
function toWeirdCase(s){
return s.toUpperCase().replace(/(\w)(\w)/g, function(a){return a[0].toUpperCase()+a[1].toLowerCase();})
}
나는 자르고 index의 짝홀을 따지고, 붙이고, 공백으로 또 붙였다.
다른 사람은 정규표현식을 사용해서 풀었다.
내가 작성한 답은 문자열의 길이가 길어질수록 실행 시간이 늘어나지만,
정규표현식을 사용한 식은 문자열을 한 번에 처리하기 때문에 실행 시간이 비교적 일정하다.
정규표현식
replace