• 자바스크립트 함수 - 매개변수, 인수, 리턴

    2021. 5. 14.

    by. 라몽(●'◡'●)디자이너

     

    함수란? (function)

    - 자주쓰는 실행 코드들을 블록단위로 묶어서 패키징한 형태

    - 자주쓰는 코드들을 기능단위로 묶어서 재사용하기 위함

     

     

    간단한 함수 정의문이다.

    {}로 함수내용을 담는 바디안에 어떤 프로그램을 넣어도 실행되지 않는다.

    선언만 한 것이고 함수호출이 필요하다.

     

    함수명에 ()를 입력하면 해당 함수가 실행된다.

     

     

     

     

    _함수정의와 호출예시

    - 함수정의 : 미리 function키워드로 자주쓰는 코드들을 묶어주는 행위

    - 함수호출 : 미리 정의되어 있는 함수를 호출해야지 비로소 실행됨

     

     

     

    함수의 인수 (파라미터, 매개변수)

    - 함수 외부에서 특정값을 함수 내부로 전달해주는 통로이름

    인수(argument)와 매개변수(parameter)는 키워드로 매칭된다.

     

    인수

    -함수를 호출할 때 함수에 전달하는 값, 변수, 참조 등

    -매개변수를 통해 직접적으로 전달되는 값

     

    매개변수(파라미터 parameter)

    -함수에서 입력 등에서 사용되는 전달된 값을 받는 변수

    -함수 밖의 값을 함수 안에서 사용할 수 있게 연결해주는 변수

     ==> 외부의 특정 값을 함수 내부로 전달해주는 통로 개념

     

    sum(1,2)

    여기서 괄호안에 있는 1,2 값이 어큐먼트(=인수)이다.

    파라미터 값으로 아규먼트 1과 2값을 대입

     

     

     

     

     

    특정 데이터의 자료형 검사

    - typeof 검사할값;

    - 문자열 형태로 해당 자료형을 반환

     

     

    typeof 변수 또는 데이터;

     

    - a의 타입은 숫자이기 때문에 첫 번째 콘솔 출력값은 number이 될 것이다.

    - typeof의 반환 타입이 String이기 때문에 콘솔 창에는 number과 string이 출력된다.

     

     

     

     

     

    -함수 예제

     

     

     

     

     

    함수 리턴값(반환값, return)

    : return문은 함수에서 결과값을 반환할때 사용

     

    - 함수 내부의 값을 함수 외부로 반환

    - 함수안에서 내보내고 싶은 값 안에 return 키워드를 붙여줌

     

     

    [리턴값을 쓰는 이유]

    1. (반환) 해당 함수의 결과값을 다시 다른 함수에서 재활용해야 될 때

     

    2. (함수종료) 함수내부에서 구문 실행도중에 return문을 만나면 강제로 함수가 종료됨

    num1와 num2 둘 중 하나라도 값이 들어가있지 않으면 return문으로 종료!

     

     

     

     

     

    [블로그 참고]

     

    https://blog.naver.com/leeba37/221789485362

    함수정리

     

    https://blog.naver.com/jgch0828a/222325554122

    함수 인수, 매개변수, 가변인수

     

    https://blog.naver.com/jimin101477/222260631361

    ES6의 이해

    반응형

    '코딩스터디 > Javascript' 카테고리의 다른 글

    반복문 - for, forEach, map, for of  (0) 2021.05.14
    자바스크립트 조건문  (0) 2021.05.14
    자바스크립트 자료형  (0) 2021.05.13
    자바스크립트 연산자  (0) 2021.05.13
    자바스크립트 변수  (0) 2021.05.13

    댓글