문제
https://school.programmers.co.kr/learn/courses/30/lessons/120907
풀이
eval을 사용해서 풀면 간단하겠지만, 실제 코드에서 eval은 악성 버그를 유발시킬수도 있기에 사용을 자제하는 편이다.
(eval은 문자열 수식을 넣으면 계산해주는 함수, ex. eval("1+1") //2 )
split 으로 공백을 기준으로 쪼갠 후 구조분해 할당을 통해 하나씩 어떤 값을 의미하는지 적어보자.
적어놓고 나면 if문으로 분리해서 쉽게 풀 수 있다.
function solution(quiz) {
return quiz.map((expression, i) => {
const [a, sign, b, equal, result] = expression.split(" ");
if (sign === "+") {
return Number(a) + Number(b) === Number(result) ? "O" : "X";
} else {
return Number(a) - Number(b) === Number(result) ? "O" : "X";
}
});
}
'개발 > 알고리즘(코딩테스트)' 카테고리의 다른 글
프로그래머스, 자바스크립트) 배열 조각하기 (1) | 2024.04.04 |
---|---|
프로그래머스, 자바스크립트) 코드 처리하기 (0) | 2024.04.03 |
프로그래머스, 자바스크립트) 다항식 더하기 (1) | 2024.03.19 |
프로그래머스, 자바스크립트) 특이한 정렬 (0) | 2024.03.18 |
프로그래머스, 자바스크립트) 배열 만들기 2 (0) | 2024.03.17 |