문자열 s는 한 개 이상의 단어로 구성되어 있습니다.
각 단어는 하나 이상의 공백문자로 구분되어 있습니다.
각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
[제한 사항]
[입출력 예]
| s | return |
|---|---|
| "try hello world" | "TrY HeLlO WoRlD" |
[입출력 예 설명]
"try hello world"는 세 단어 "try", "hello", "world"로 구성되어 있습니다.
각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바꾸면 "TrY", "HeLlO", "WoRlD"입니다.
따라서 "TrY HeLlO WoRlD" 를 리턴합니다.
let solution = (s) => {
let answer = '';
let word = s.split(" ");
for (let x of word) {
for (let i = 0; i < x.length; i++) {
if (i % 2 === 0) {
answer += x[i].toUpperCase();
} else {
answer += x[i].toLowerCase();
}
}
answer += " ";
}
return answer.slice(0, answer.length - 1);
}
spilt(구분자, [최대 분할 개수])
const str = "apple banana orange";
const arr = str.split(); // arr = [apple banana orange]
const str = "apple banana orange";
const arr = str.split(" "); // arr = [apple, banana, orange]
const str = "a b c";
const arr = str.split(""); // arr = [a, ' ', b, ' ', c]
const str = "apple,banana,orange";
const arr = str.split(",", 2); // arr = [apple, banana] : 배열 2개까지만 생성
slice(start, end)
start 부터 end 미만까지 복사 → 새로운 배열 객체로 반환
**원본 배열은 수정되지 않는다.
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var arr1 = arr.slice(3, 5); // arr1 = [4, 5]
splice(start, [제거할 요소의 수], [추가할 요소])
배열의 기존 요소에 추가 or 삭제 or 교체
**원본 배열 자체를 수정하고 제거한 요소를 담은 배열을 반환한다.
//인덱스 10부터 2개 삭제, a b c 추가
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
var arr1 = arr.splice(10, 2, 'a', 'b', 'c'); // arr1 = [11, 12]
console.log(arr); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, "a", "b", "c"]
//제거x, 인덱스 5 이후 add 추가
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
var arr1 = arr.splice(5, 0, 'add'); // arr1 = []
console.log(arr); // [1, 2, 3, 4, 5, "add", 6, 7, 8, 9, 10, 11, 12]