동일한 코드가 반복되어 쓰여질 때 함수로 만들어서 사용하면 편하다. F:X -> Y의 수학적 표기법 처럼 X는 매개변수로 들어가 Y의 값을 출력한다.
function SayHello(name){
let newName = name || "default" // OR연산자로 name이 undefined이면 False로 default를 newName에 대입된다.
console.log(`Hello, ${newName}`);
}
SayHello('Jane');
function SayHello(newName = 'default'){
console.log(`Hello, ${newName}`);
}
SayHello('Jane');
function add(num1,num2){
return num1 + num2;
}
let result = add(1,2);
console.log(result);
return을 하고 아무 값도 입력하지 않으면 undefined를 결과값으로 출력하므로 함수를 끝마칠 때에도 return만 넣어준다.
function add(num1,num2){
return;
}
const result = add(1,2);
console.log(result);
아래와 같은 함수는 함수가 아래에서 선언되어 있어도 호출이 가능하다. 그 이유는 미리 선언된 함수들을 모아놓기 때문이다. 이를 호이스팅이라한다.
add(1,2)
function add(num1,num2){
return num1+num2;
}
두 번째 방식은 사용을 하지 못한다. 변수를 미리 선언안하면 쓰지 못하듯이 마찬가지이다.
add(num1,num2) // X
let add = function(num1,num2){
return num1+num2;
}