궁금한게 많은 코린이의 Developer 노트

[TIL] 프로그래머스 덧셈식 출력하기 본문

TIL

[TIL] 프로그래머스 덧셈식 출력하기

lemonarr🍋 2024. 1. 29. 06:57
const readline = require('readline');
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

let input = [];

rl.on('line', function (line) {
    input = line.split(' ');
    let a = input[0];
    let b = input[1];
    let c = Number(a) + Number(b);
    console.log(a +' + '+ b + ' = '  + c);
}).on('close', function () {
});

 

 

 

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

rl.on('line', function (line) {
    let [a,b] = line.split(' ');
    let c = Number(a) + Number(b);
    console.log(a +' + '+ b + ' = '  + c);
}).on('close', function () {
});

 

 

input = line.split('  ');

let a

let b

let c 

이 4줄을 한줄로 바꿀 수 있다.

 

let [ a,b ] = line.split('  ');

 

필요 없는 부분을 제거하고

변수를 한번에 선언해 주었더니 코드가 보기 쉽게 줄어들었다.

 

 

 

참고 풀이

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

let a, b;

rl.on('line', function (line) {
    [a, b] = line.split(' ').map(Number);
}).on('close', function () {
    console.log(`${a} + ${b} = ${a + b}`);
});

 

 

생성자 함수  Number를 map()의 콜백함수로 사용하여 a,b 에 구조분해 할당하였다.

a,b 변수선언 + 단어 자르기 + Number 함수 적용

이 세가지가 한 문장으로 가능하다..! 

 

그리고 Number 함수 적용을 미리 해주었기 때문에 c라는 변수를 따로 선언해주지 않아도,

a 와 b변수만으로 표현이 가능하다. 정말 간결하고 깔끔하게 코드를 작성하신 것 같다. 

 

 

 

 

 

오늘의 개념 정리

 

잘 사용하지 않았던 표현식 삽입 ${ } .. 앞으로 자주 사용해보자 ^^

 

1. 표현식 삽입 ${ } : { } 사이에 변수나 연산식 사용이 가능하다.

 

템플릿 리터럴 기능을 사용하여 문자열 안에 변수를 넣는 것이 가능하다.

console.log(`${ a } + ${ b } = ${ a + b }`) 와 같이,

보다 가독성있는 코드를 사용할 수 있다.

 

 

 

2. map( Number )

map 함수 안에 Number 라는 함수(생성자 함수)를 할당할 수 있다.