스크립트를 작성하다 보면 유사한 동작을 하는 코드가 여러 곳에서 필요할 떄가 많다.
사용자가 로그인이나 로그아웃을 했을 때 안내 메시지를 보여주는 동작 같은 경우다.
함수는 프로그램을 구성하는 주요 '구성 요소(building block)이다. 함수를 중복 없이 유사한 동작을 하는 코드를 여러 번 호출할 수 있다.
funciton 함수이름(복수의, 매개변수는, 콤마로, 구분합니다){
/* 함수 본문*/
}
함수 선언(function declaration) 방식을 이용하면 함수를 만들 수 있다.
function singSong(){
console.log("Twinkle, twinkle,, little star")
}
위에 예제는 매개변수가 없었지만 매개변수가 있을시 이렇게 작성 할 수 있다.
function calculate(num){
console.log(num * num);
}
teturn은 실제 계산된 값을 리턴해준다.
console은 프린트해주는 것 뿐이다.
예시
function square(x){
return x * x;
}
위 코드에서 return을 활용하여 variosu에 값을 저장할 수도 있습니다.
함수 내에서 선언한 변수인 지역 변수(local variable)는 함수 안에서만 접근할 수 있다.
function showMessage() {
let message = "안녕하세요!";
alert(message);
}
showMessage(); // 안녕하세요.
alert(message); // ReferenceError
함수 내부에서 함수 외부의 변수인 외부 변수(outer variable)에 접근할 수 있다.
let userName = 'John';
function showMessage() {
let message = 'Hello, ' + userName;
alert(message);
}
showMessage(); //Hello, John
나쁜 예
return
(some + long + expression + or + whatever * f(a) + f(b))
자바스크립트는 return문 끝에 세미콜론을 자동으로 넣기 때문에 이렇게 return문을 작성하면 안된다.
return;
참고자료 : https://velog.io/@hyounglee/TIL-12
참교자료 : https://learnjs.vlpt.us/basics/05-function.html