함수는 문장을 캡슐화 하여 어디서든 실행할 수 있게 하므로 모든 언어의 핵심입니다.
function 함수명 (매개변수) {
실행할 코드
}
Javascript의 매개변수는 다른 언어의 매개변수와 다르게 동작합니다.
데이터 타입을 검사하지도 않고, 매개변수의 숫자를 따지지도 않습니다.
매개변수를 2개 받도록 했다고 해도 매개변수를 1개 3개 또는 아에 넘기지 않아더라도 이를 에러로 간주하지 않습니다.
함수는 arguments 라는 객체를 하나 갖는데 이 객체를 통해 매개변수의 값에 접근 할 수 있습니다.
첫번째 매개변수는 arguments[0], 두번째 매개변수는 arguments[1]의 형태로 접근합니다.
전달받은 매개변수의 개수는 length 속성을 통해 알 수 있습니다.
arguments 객체는 내부적으로 배열처럼 동작하지만 Array 객체의 인스턴스는 아닙니다.
매개변수의 개수 및 타입이 없어 함수 오버로딩이 없습니다.
var 변수명 = function (매개변수) {
실행할 코드
}
위의 예제와 동일한 결과입니다.
함수 표현식은 함수 호출 이전에 선언 되어야 합니다.
이것은 에러 입니다.