함수란 하나의 특정한 작업을 수행하도록 설계된 독립적인 블록
함수 이름을 부르면 함수 내에 있는 코드가 실행된다. 함수를 불러 실행시키는 것: "함수를 호출한다"
// 함수 정의
function checkCorrect() {
let hi = "안녕하세요";
return hi;
}
checkCorrect(); // 함수 호출
함수 이름 옆 소괄호 자리에 적혀있는 단어는 매개변수(parameter)라고 부르며, 이 매개변수는 외부로부터 들어오는 값을 담아 함수 내부에서 사용하도록 하는 변수의 역할을 한다.
// 함수 생성
function getName(name) {
return name + '님';
}
// 함수 호출
let result1 = getName('개발자'); // '개발자'와 같은 실질적인 값: 인자(argument)
console.log(result1); // output: 개발자님
예시.
1) 함수 halfNumber 선언 및 구현
- 숫자로 된 인자를 하나 받는다.
- 받은 값을 2로 나눈 결과 리턴
2) 함수 halfAndAddNumber 선언 및 구현
- 숫자로 된 인자를 하나 받는다.
- 1)번의 halfNumber를 호출하면서 인자로 받았던 값을 다시 halfNumber함수에 전달
- halfNumber의 리턴결과를 함수 안쪽에서 변수명 result에 정의
- result에 1을 더한 값 리턴
function halfNumber (number) {
let numberDivided = number / 2;
return numberDivided;
}
function halfAndAddNumber (number) {
let result = halfNumber(number);
return result + 1;
}
인자를 3개 받는 함수 만들기. 첫번째 인자는 년도, 두번째는 월, 세번째는 일에 해당하는 숫자.
function meetAt(year, month, date) {
if(year, month, date){
return (year + "/" + month + "/" + date);
}
if(year, month){
return (year + "년" + " " + month + "월");
}
if(year){
return (year + "년");
}
}
return
이라는 것은 함수를 호출했을 때 함수가 값을 반환한다는 뜻이다.
예) 인자가 하나인 multiplyTen 함수의 정의 >> 받은 인자에 10을 곱하여 반환
function multiplyTen (myNumber) { return 10 * myNumber; }
return
을 생략하면 함수는 undefined
를 반환한다.
function getTax(price) {
return price * 0.1;
}
function calculateTotal(price) {
return price + getTax(price); // calculateTotal 함수 내부에서 getTax 호출
}
var result = calculateTotal(3500);
console.log(result);