JS.연습문제 (이상한 문자 만들기)

Vorhandenheit ·2021년 6월 18일

JS.연습문제

목록 보기
8/12

<문제>

문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.

1.문자열 s에 띄어쓰기를 없앤다. 단어별로 분리
2.각 단어, 인덱스별로 짝수는 대문자로, 홀수는 소문자로 바꾸는 조건을 작성
3. 분리된 단어를 다시 합치고 리턴
4.되도로 고차원함수를 쓰는 걸 연습!

function solution(s) {
 	let deletespace = s.split(' ')
    deletespace.map((deletespace, index) => {(index % 2) ===0) ? deletespace.toUpperCase(): deletespace.toLowerCase();}).join(' ')
    s }
return deletspace
}

<다른 사람의 풀이>

function soluton(s) {
	const answer =
    s.split(' ').map((valueArr) => {
    	return valueArr.split('').map((value, index) => {
        	return !(index % 2) ? value.toUpperCase() : value.toLowerCase()'
        }).join('')
    }).join(' ');
  return answer;
}

<또 다른사람의 풀이>

function toWeirdCase(s) {
	let str = '';
  	let arr = s.split(' ');
  
  	for (let i in arr) {
    	for (let j = 0; j < arr[i].length; j++) {
        	let t = arr[i][j];
          	str += (j % 2 === 0) ? t.toUpperCase() : t.toLowerCase();
        }
      str += ' ';
    }
 return str.slice(0, str.length -1);
}
profile
읽고 기록하고 고민하고 사용하고 개발하자!

0개의 댓글