유사한 동작을 하는 코드가 여러곳에 필요할 때 함수를 이용하면 중복없이 코드를 여러번 재사용 할 수 있습니다.
스크립트내에서 함수를 선언하는 방법은 3가지가 있습니다
function a (매개변수) {함수본문}
//함수 선언문은 함수 이름은 function 키워드 뒤에 써 줍니다.
const b = function (매개변수) {함수본문};
//함수 표현식과 화살표 함수는 함수 이름을 변수에 선언하고 변수에 할당해서 써 줍니다.
const c = (매개변수)=>{함수본문};
위 함수를 모두 함수 이름을 붙여 줬는데요. 함수에 꼭 이름이 있어야 하는 것은 아닙니다. 이름이 없는 함수 즉 익명함수 라고 하는데요.
function() {}
()=>{}
익명함수는 함수를 재사용할 필요가 없을 때 사용합니다.
필요한 곳에 함수를 실행시켜 줍니다.
a(인수);
b(인수);
c(인수);
함수를 호출했을 때 함수가 실행되는 것 외에 특정 값이 반환되게 할 수 있습니다. 이 특정 값을 반환값이라고 하는데요.
반환값이 따로 지정되지 않으면 함수는 항상 undefined를 반환합니다.
return은 값을 반환하는 역활뿐만아니라 함수 실행을 즉시 중단합니다. 함수안에 조건문이 있다면 return을 사용해 조건에 맞을 때 함수를 종료하는 것도 가능합니다.
함수의 반환값이 여러개가 필요한 경우 다음과 같이 써주면
function (){
return 1, 5
}
함수는 마지막 5만 return됩니다. 이럴 때는 배열이나 객체에 값을 넣어 return해주면 됩니다.
const multiply = (x, y, z) =>{
return x*y*z;
}
화살표 함수에서 중괄호 뒤에 return이 나오면 중괄호와 return을 생략할 수 있습니다
const multiply = (x, y, z) => x*y*z;