본문 바로가기

JavaScript

프로토타입, 상속, Math, 가위바위보, 로또생성기(2024-04-16)

 

 

Math 객체

더보기
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Math객체</title>
</head>
<body>
    <h2>Math객체</h2>
    <script>
         // min() : 가장 작은 수를 반환. 매개변수가 전달되지 않으면 Infinity를 반환
        console.log(Math.min()); // Infinity
        console.log(Math.min(1, 10, -10, 0, '-100')) // -100
        console.log(Math.min(1, 10, -10, '마이너스천', 0, -100)) //NaN

        // max() : 가장 큰 수를 반환. 매개변수가 전달되지 않으면 -Infinity를 반환
        console.log(Math.max()); // -Infinity
        console.log(Math.max(1, 10, -10, 0,1000,  '-100')) // 1000

        // round() : 소수점 첫번째 자리에서 반올림하여 그 결과를 반환
        console.log(Math.round(10.49)) // 10
        console.log(Math.round(-10.50)) // -10
        console.log(Math.round(10.9)) // 11

        // floor() : 소수점 첫번째 자리에서 소수점을 버림
        console.log(Math.floor(10.49)) // 10
        console.log(Math.floor(-10.50)) // -10
        console.log(Math.floor(10.9)) // 10

        // ceil() : 소수점 첫번째 자리에서 소수점을 올림
        console.log(Math.ceil(10.49)) // 11
        console.log(Math.ceil(-10.50)) // -10
        console.log(Math.ceil(10.9)) // 11

        let num = 123.4567;
        console.log(Math.round(num * 100)); // 12346

        // n번째 자리에서 반올림
        console.log(Math.round(num * 100)/100); // 123.46
        console.log(num.toFixed(2)); // 123.46

        // random() : 0보다 크거나 같고 1보다 작은 무작위 소수를 반환
        const ram = Math.random();
        console.log(ram);
        const number = Math.ceil(Math.ramdom()*10);
        console.log(number);
    </script>
    
</body>
</html>

가위 바위 보

더보기
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>가위바위보</title>
</head>
<body>
    <h2>가위바위보</h2>
    <script>
    while(true){
        user = prompt('가위, 바위, 보 중 하나를 입력하세요');
        const com = Math.ceil(Math.random() * 3); 
        
        if(user=='가위'){
            if(com == 1){
                console.log(`컴퓨터 : 가위, 유저 : 가위 비겼습니다`);
            }
            else if(com == 2){
                console.log(`컴퓨터 : 바위, 유저 : 가위 졌습니다`);}
            else{
                console.log(`컴퓨터 : 보, 유저 : 가위 이겼습니다`);
                break;
            }
                
        }
        else if (user=='바위'){
            if(com == 1){
                console.log(`컴퓨터 : 가위, 유저 : 바위 이겼습니다`);
                break;
            }
            else if(com == 2){
                console.log(`컴퓨터 : 바위, 유저 : 바위 비겼습니다`);
            }
            else{
                console.log(`컴퓨터 : 보, 유저 : 바위 졌습니다`);
            }
        }
        else{
            if(com == 1){
                console.log(`컴퓨터 : 가위, 유저 : 보 졌습니다`);
            }
            else if(com == 2){
                console.log(`컴퓨터 : 바위, 유저 : 보 이겼습니다`);
                break;
            }
            else{
                console.log(`컴퓨터 : 보, 유저 : 보 비겼습니다`);
            }
        }
    }
    console.log('프로그램을 종료합니다.')
    </script>
</body>
</html>

로또생성기

더보기
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>로또생성기</title>
</head>
<body>
    <h2>로또생성기</h2>
    <script>

    const lotto = [0, 0, 0, 0, 0, 0];
    for(let i = 0; i<lotto.length;i++){
        lotto[i] =Math.ceil(Math.random()*45);
        for(let j=0; j<i; j++){
            if (lotto[i]==lotto[j]){
                i--;
            }
        }
    }
    //String(lotto) 실패
    
    // for(let k = 0; k < lotto.length; k++){
    //     String(lotto[k])
    // } 실패

	lotto.sort((c,p) => c-p)
    console.log(lotto);
    </script>

</body>
</html>