자바스크립트

[JavaScript] 프로그래머스 대소문자 바꿔서 출력하기

코딩하는둥이 2024. 3. 25. 15:14
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제 설명

영어 알파벳으로 이루어진 문자열 str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.

 

입출력 예

aBcDeFg AbCdEfG

 

코드

const readline = require('readline');
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

let input = [];

rl.on('line', function (line) {
    input = [line];
}).on('close',function(){
    str = input[0];
    result = [];
    const strArr = [...str]
    strArr.map(a => { //map 함수를 사용하여 strArr의 각 문자에 대해 반복한다.
        if(a === a.toUpperCase()) { //toUpperCase 함수를 사용하여 만약, 문자가 대문자이면 소문자로 변환
            result.push(a.toLowerCase()); // 변환한 문자를 배열에 추가
        }else {  //toUpperCase 함수를 사용하여 만약, 문자가 대문자아니면 대문자로 변환
            result.push(a.toUpperCase()); // 변환한 문자를 배열에 추가
        }
    })
    console.log(result.join('')); //모든 문자를 하나의 문자열로 합친 후 출력
});

 

풀이

map

: 배열을 순회하며 지정된 콜백 함수를 적용하여 각 요소를 변환하고, 그 변환된 값을 모아 새로운 배열로 반환

const numbers = [1, 2, 3, 4, 5];

const multipliedNumbers = numbers.map(num => num * 2);

console.log(multipliedNumbers); // [2, 4, 6, 8, 10]

 

toUpperCase

 : 문자열을 대문자로 변환해서 변환하는 함수

let str = "hello";
let upperCaseStr = str.toUpperCase();
console.log(upperCaseStr); // 출력: "HELLO"

 

toLowerCase

 : 문자열을 소문자로 변환해서 변환하는 함수

let str = "HELLO";
let lowerCaseStr = str.toLowerCase();
console.log(lowerCaseStr); // 출력: "hello"

 

push

 : 배열 끝에 하나 이상의 요소 추가하는 함수

let arr = [1, 2, 3];
arr.push(4); // 4를 배열에 추가합니다.
console.log(arr); // 출력: [1, 2, 3, 4]

 

join

 : 배열의 각 요소를 지정된 구분자로 연결하여 하나의 문자열로 반환하는 함수

let arr = ["apple", "banana", "orange"];
let joinedStr = arr.join(", ");
console.log(joinedStr); // 출력: "apple, banana, orange"