toAlternatingCase.js (8kyu 25)

Codewars 알고리즘 풀이


Description

  • Define such that each lowercase letter becomes uppercase and each uppercase letter becomes lowercase.
    • 각 소문자는 대문자로, 각 대문자는 소문자로 변환한다.



Solution 01

function toAlternatingCase(str) {
  let result = '';
  
  for (let i = 0; i < str.length; i++) {
    if (str[i] === str[i].toUpperCase()) {
      result += str[i].toLowerCase();
    } else {
      result += str[i].toUpperCase();
    }
  }
  
  return result;
}

toAlternatingCase('Hello world'); // hELLO WORLD
toAlternatingCase('HELLO WORLD'); // hello world


Solution 02

function toAlternatingCase(str) {
  return str.split('').map(i => i === i.toUpperCase() ? i.toLowerCase() : i.toUpperCase()).join('');
}

toAlternatingCase('Hello world'); // hELLO WORLD
toAlternatingCase('HELLO WORLD'); // hello world