간이계산기 ver 3

oYJo·2024년 12월 27일

JavaScript

목록 보기
7/52
post-thumbnail

간이계산기 만들기 3

전체코드

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>실습문제1</title>
</head>
<body>

    <h1>간이계산기 만들기</h1>

    첫번째 값: <input type="text" id="num1"> <br>
    두번째 값: <input type="text" id="num2"> <br>

    <!-- 
        함수 호출 시 매개변수 this
        -> 이벤트가 발생한 요소 자체를 의미한다.
        (여기서는 클릭된 연산자 버튼을 의미)
     -->
    
    <button onclick="calculate(this)">+</button>
    <button onclick="calculate(this)">-</button>
    <button onclick="calculate(this)">*</button>
    <button onclick="calculate(this)">/</button>
    <button onclick="calculate(this)">%</button>
    
    <br><br>

    계산결과: <span id="result"></span>
    
    <script>
        function calculate(btn){
            // btn에는 클릭된 this(클릭된 버튼 요소)가 전달되어짐
            // console.log(btn);
            const op = btn.innerText; // 버튼의 내용(+, -, *, /, %)를 얻어옴
            
            // input에 입력된 값을 얻어와 바로 number타입으로 변환
            const num1 = Number(document.getElementById("num1").value);
            const num2 = Number(document.getElementById("num2").value);

            // 결과 저장용 변수
            let result = 0;

            switch(op){
                case '+' : result = num1 + num2; break;
                case '-' : result = num1 - num2; break;
                case '*' : result = num1 * num2; break;
                case '/' : result = num1 / num2; break;
                case '%' : result = num1 % num2; break;
            }

            // span 태그에 결과 출력
            document.getElementById("result").innerHTML=result;

        }
       
    </script>



</body>
</html>

profile
Hello! My Name is oYJo

0개의 댓글