KoreaIt Academy/JAVASCRIPT

[JAVASCRIPT - ES6] 자바스크립트 함수, 파라메터, 나머지 파라메터, 화살표 함수, 에러와 예외처리(try ~ catch, throw)

hongeeii 2021. 9. 5.
728x90
반응형

자바스크립트는 함수형 언어입니다.

구현하는 기능들은 기본적으로 모두 함수를 통해 구현됩니다.


함수의 구조

function 함수이름(파라메터){
      //실행 영역
}

함수는 위의 형태를 가집니다.

 

function : 함수임을 표시하는 키워드 입니다.

함수이름 : 함수를 호출할 떄 사용하는 명칭입니다. 

              함수를 선언하는 방식에 따라 function 뒤에 올수도, 앞에 대입 변수명으로 올 수도 있습니다.

파라메터 : 매개변수라고도 하며, 괄호로 감싸 표현하고, 파라메터가 없을 경우 ()만으로 표시합니다.

              함수 안의 실행 영역에 전달할 값이 있을 경우 파라메터를 이용해 값을 넘기게 됩니다.

실행 영역 : 함수의 실행 결과 값을 반환하기 위해 return 결과 값; 같은 코드를 추가할 수 있습니다.

               ※ return이 없다고 반환을 하지않는게 아니고, "undefined"를 반환합니다.

 

 

함수 정의 방법

함수 선언문 형태로 만드는 방법과, 함수 표현식으로 만드는 방법 2가지가 있습니다.

 

함수 선언문 형태

function myFunc(param){
     console.log(param + 'run!');
}

 

함수 표현식 형태

const myFunc2 = function(param){
     console.log(param +'run!);
}

 

사용 방법은 일반 함수와 동일합니다.

myFunc('myFunc');

myFunc2('myFunc');

 

 

 

파라메터와 인자

파라메터는 함수 정의 시점에 정의하는 변수로 함수가 넘겨받는 값 들을 담기 위한 함수 내부에서 사용하는 변수입니다.

인자는 실제 함수를 호출하는 시점에 함수 호출과 함께 함수로 넘어가는 값 입니다.

 

자바스크립트는 파라메터 개수와 인자 개수가 일치하지 않아도 에러가 발생하지 않습니다.

파라메터 개수보다 인자 개수가 적을 경우 남는 파라메터에는 "Undefined" 가 전달됩니다.

 

ES6에서 새롭게 추가된 기능으로 함수를 정의할 때 함수 파라메터의 기본값을 설정할 수 있는 기능이 생겼습니다.

 

이렇게 파라메터 기본 값을 지정하여 함수를 구현하면, 파라메터 값이 넘어왔는지를 체크하지 않아도 되기 때문에

최적화된 코드를 작성할 수 있습니다.

 

나머지 파라메터

ES6에서 추가된 기능으로, 파라메터 개수를 가변으로 사용할 수 있도록 해주는 기능입니다.

맨 마지막 파라메터 변수명 앞에 붙여서 점 3개(...)를 표시하면 해당 파라메터는 나머지 파라메터가 됩니다.

function myFunc(a, b, ...args){
}

최소 2개의 파라메터는 필수고, 추가의 파라메터는 선택적인 파라메터라면 

나머지 파라메터는 배열 객체로 넘어오기 때문에

순환 구문으로 나머지 파라메터들에 대한 처리를 손쉽게 할 수도 있습니다.

function sum(a, b, ...args){
     let result = a + b;
     args.forEach(function(arg){
          result += arg;
     })
     return result;
}

 

 

화살표 함수

화살표 함수는 ES6에서 도입된 함수 표기 방법으로 함수를 단순한 형태로 표현할 수 있도록 해줍니다.

1.     function add(a, b){
		return a + b;
	 }
	
2.	let add = (a,b) => a+b;

1번과 같은 함수를 2번과 같은 형태로 단순화를 할 수 있습니다.

 

사용 예시)

const alert = () => console.log('error');

 

 

에러와 예외 처리(throw, try ~ catch ~ finally)

throw 

  에러 상황이라고 판단될 경우 강제로 예외 오류를 발생시키고 코드 실행을 종료하는 구문입니다.

  사용자가 코드상에 직접 원하는 위치에 예외 오류를 발생시키고 실행을 중지하는데 사용합니다.

  throw '사용자 지정 에러 메시지!';

  이렇게 작성하면 해당 위치에서 코드실행은 멈추게 되고,

  사용자가 지정한 에러메시지를 표시하는 예외 오류가 발생합니다.

  throw 구문에서 예외오류가 발생하면, 그 밑의 코드는 실행되지 않습니다.

 

try ~ catch ~ finally

  에러가 발생할 가능성이 있는 코드 블록을 감싸서, 에러가 발생할 경우 catch 블록에서 발생한 에러에 대한

  대응을 할 수 있도록 합니다.

  예외 발생 여부와는 무관하게 무조건 실행되도록 하는 코드를 finally 블록에 추가할 수 있습니다.

728x90
반응형

추천 글