본문 바로가기
국비 과정/JavaScript

국비 - 0920 ( funtion )

by 코딩호야 2022. 9. 20.

funtion ( 함수 )

함수는 데이터를 전달받아 처리한후 결과를 돌려주는 코드블럭이다.

 

1. funtion 함수이름 ( 매개변수1 , 매개변수2 , ...){

        실행문 ;
        .
        .
} ;

 

2. var 함수이름 = funtion( 매개변수1 , 매개변수 2 , ...){

        실행문 ;

        .
        .
} ;

 

함수호출 
    함수이름 ( value1 , value2, ...);

    . 인자의 개수와 값의 개수가 같으면 아무런 문제 없이 출력됩니다.
    . 값이 인자보다 적으면 값이 없는 인자는 undefined 를 반환합니다.
    . 값이 인자보다 많으면 인자보다 많은 값은 무시됩니다.

 

<!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>
    <script>

        function adder (a, b){  //함수 선언
            var sum;
            sum = a + b ;
            return sum;
        }
        
        function sub (a, b){  
            var sum;
            sum = a - b ;
            return sum;
        }

        
        // function => 함수 선언을 표시하는 키워드
        // adder    => 함수 이름
        // (a , b)  => 함수를 호출하는 곳으로 부터 값을 받는 매개변수
        // return   => 함수의 실행을 종료하고 호출한 곳으로 
        //             되돌아 가면서 함수의 실행 결과를 반환 함
    </script>
</head>
<body>
    <h3> 함수 adder </h3>
    <hr>
    <script>
        var n = adder(24,88);   // 함수 호출
        
        var tt = sub(67,345);    //함수 호출

        document.write("24 + 98 은"+n+"<br>");
        document.write("67 - 345 은"+tt+"<br>");
    </script>
    
</body>
</html>

 

위는 기본적인 javascript 함수 사용 방식이다. 위코드를 실행시키면 아래와 같이 출력된다.

<title>JavaScript function</title>
    <style>
        h1{
            font-family: Consolas;
        }
        h1 span {
            color : #66dd33;
        }
    </style>
</head>
<body>
    <script>
        function abcFunction (name , stu){  //  함수 선언
            document.write( '<h1>My name is <span>' + name + '</span>.I am a <span>'+
                stu+ '</span>.</h1>');
        }
        abcFunction( 'King' , 'student');   // 함수 호출
        abcFunction( 'King');
        abcFunction( 'King' , 'student' , '남자');
        
        </script>


함수사용의 또다른 예 를 보여준다. 자바와 달리 자바스크립트에서는 값이랑 인자랑 갯수가 달라도 

실행은 가능하다. 아래에 출력 된 모습처럼 실행자체에서 에러가 나지는 않는다.




javascript 내장 함수

    함수 이름                     의미 
   
    eval()             문자열을 코드로 인식하게 하는 함수입니다.

    parseInt()         문자열을 정수로 바꾸는 함수

    parseFloat()       문자열을 실수로 바꾸는 함수

                    . 수로 시작할 때 그 수를 실수로 바꿉니다.
                    . 띄어 쓰기로 여러개의 수가 있으면 첫번째 수만 바꿉니다.
                    . 공백으로 시작하면 공백은 무시합니다.
                    . 수가 아닌 문자로 시작하면 NaN 을 반환 합니다.

    isFinite()      매개변수가 유한한 수인지 검사

                    . 유한한 숫자이면 true ,
                    . 무한한 숫자 또는 숫자가 아니면 false를 반환합니다.
                    . 123.123은 유한한 숫자이므로 true를 반환합니다.
                    . inFinity는 무한한 숫자이므로 false 를 반환합니다.
                    . Not a Number 는 문자이므로 false 를 반환합니다.

 <script>
        var a = 123.123;
        var b = Infinity;
        var c = 'Not a Number';
        document.write( '<p>123.123 : '+ isFinite( a ) + '</p>');
        document.write( '<p> Infinity: '+ isFinite( b ) + '</p>');
        document.write( '<p> Not a Number: '+ isFinite( c ) + '</p>');
    </script>

위 코드를 실행한 결과 이다. 



    isNaN()           매개변수가 숫자인지 검사하는 함수

                    . 123.123 은 숫자이므로 false 를 반환합니다.
                    . '123.123' 은 따옴표로 감쌌지만 , 숫자로 취급하려 false 를 반환합니다.
                    . 'Not a Number'는 숫자가 아니므로  true 를 반환합니다.
                    . '123 * 123'은 따옴표 안에 문자가 있으므로 숫자가 아닌 것으로 취급하여 ,true 를 반환합니다.

    Number()         문자열을 숫자로 변환하는 함수
                     숫자로 변환할수 없는 경우 NaN을 반환한다.

    String()         숫자를 문자열로 변환하는 함수