https://programmers.co.kr/learn/courses/30/lessons/12930
function solution(s) {
var answer = '';
var temp = [];
temp = s.split(' ');
for(var i=0; i<temp.length; i++){
for(var j=0;j<temp[i].length;j++){
if(j%2 === 0){
answer = answer + temp[i][j].toUpperCase();
}else{
answer = answer + temp[i][j].toLowerCase();
}
} answer = answer + ' ';
}
answer = answer.slice(0,answer.length-1);
return answer;
}
더 생각해보기
다른 사람의 풀이 다시 확인하기. 내 코드가 속도가 느림.
Q.이중 for 문보다는 index를 사용하는게 더 효율적이겠지?
다른 사람의 풀이 - 정규식, replace()
function toWeirdCase(s){
//함수를 완성해주세요
return s.toUpperCase().replace(/(\w)(\w)/g, function(a){return a[0].toUpperCase()+a[1].toLowerCase();})
}
function solution(s) {
var answer = '';
var index =0;
var lengthOfString = s.length;
for( var i=0; i<lengthOfString; i++){
if (s[i] === ' '){
index = -1;
}
if ((index % 2) === 0){
answer = answer + s[i].toUpperCase();
} else {
answer = answer + s[i].toLowerCase();
}
index = index + 1;
}
return answer;
}
string 관련 method - split(), slice()
array 관련 method - slice()