본문 바로가기

웹 개발/JavaScript

[Web_JavaScript] 06

● 자바스크립트 전역함수

1. eval()

- 문자열 형태로 수식을 전달받아서 수식을 계산한다.

(ex) eval("2 * 3 + 4 * 6") == 30;

 

 

2. parseInt()

- 문자열 타입을 정수 타입으로 변환한다.

(ex) parseInt("32") === 32;

 

※parseInt("32") === 32;

- 값과 타입이 모두 같다.

 

 

3. isNaN()

- NaN이라는 값인지 검사

- 숫자가 아니면 true, 숫자면 false

 

 

4. isFinite()

- 숫자면 true, 숫자가 아니면 false

 


 

● 플랫폼과 솔루션의 차이

1. 플랫폼

- 웹 상에서 서비스를 제공한다.

 

2. 솔루션

- 웹 또는 Application에서 서비스를 제공한다.

 

 

 


 

실습(전역 함수(1))

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>전역 함수</title>
</head>
<body>
    <h2>전역 함수</h2>
    <hr> 
</body>
<script>
    function useGlobalFunctions(){
        let result = eval("2 * 3 + 4 * 6");
        let value = parseInt("hello");
        console.log(typeof result);
        document.write("eval('2 * 3 + 4 * 6')은 " + result + "<br>");

        if(isNaN(value)){
            console.log("숫자가 아닙니다."); 
        }else{
            console.log("숫자입니다.");
        }

        if(isFinite(value)){
            console.log("숫자입니다.");
        }else{
            console.log("숫자가 아닙니다.");
        }

    }

    useGlobalFunctions();
</script>
</html>

 

결과

 

 

 

 

실습(전역 함수(2))

- 사용자에게 단 수를 입력받은 후 해당 구구단 출력

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>구구단</title>
</head>
<body>
    <h1>구구단</h1>
    <h3>입력받은 단 출력</h3>
    <hr>
</body>
<script>
    while(true){
        var input = prompt("단: "); 
        if(printGugudan(parseInt(input))){
            break;
        }
    }

    function printGugudan(dan){
        // 실수인지 검사
        let check = input - dan != 0;

        // 문자가 섞여 있는 지 검사
        // 0 또는 음수인지 검사
        if(isNaN(dan) || check || dan < 1 || dan > 9){
            alert("다시 입력해주세요");
            return false;
        }
        for(let i = 1; i < 10; i++){
            document.write("<p>" + dan + "*" + i + "=" + dan * i + "</p>");
        }
        return true;
    }
</script>
</html>

 

결과(실행 시 출력 팝업창)
 
결과(실수 or 0 or 음수 or 문자 입력 시)
 
결과('4' 입력 시)
 
 

 

 

'웹 개발 > JavaScript' 카테고리의 다른 글

[Web_JavaScript] 08  (0) 2022.05.04
[Web_JavaScript] 07  (0) 2022.05.03
[Web_JavaScript] 05  (0) 2022.05.01
[Web_JavaScript] 04  (0) 2022.04.30
[Web_JavaScript] 03  (0) 2022.04.29