함수란?
자바스크립트로 작성한 프로그램은 많은 명령을 순서대로 하나씩 처리한다. 이때 프로그래머가 처리해야 할 과제에 따라 기능별로 여러 명령을 묶어 놓은 것을 '함수'라고 한다.
addNumber();
function addNumber() {
.......
} //함수 호출소스를 선언 소스보다 앞에 작성한 예
function addNumber() {
.......
}
addNumber(); //함수 호출 소스를 선언 소스 뒤에 작성한 예
function multiple(a, b = 5, c = 10) {
return a * b + c;
}
multiple(5, 10, 20) //a=5, b=10, c=20
70
multiple(10, 20) //a=10, b=20, c=10(기본 값)
210
multiple(30) //a=30, b=5(기본 값), c=10(기본 값)
function addNumbere(a, b) {
var sum = a + b;
return sum;
}
에서
function addNumber(a, b) {
return a + b;
}
변수의 적용 범위
자바스크립트에서 변수를 선언하고 사용할 때 변수가 적용되는 범위를 스코프(Scope)라고 한다.
- 지역 변수(로컬 변수 Local Variable) : 한 함수 안에서만 사용할 수 있는 변수
- 전역 변수(글로벌 변수 Global Variable) : 스크립트 소스 전체에서 사용할 수 있는 변수
함수를 선언할 떄 지역변수를 선언하려면 예약어 var과 함께 변수 이름을 지정해야 한다!! 만약 var이 없으면 함수 안에서 선언했더라도 전역 변수로 취급!!
지역 변수는 전역 변수에 영향을 주지 않는다!!
ES6에는 '블록 변수(Block Variable)'이 추가됨!
변수를 선언한 블록(중괄호({})로 묶은 부분)에서만 유효하고 블록을 벗어나면 사용할 수 없는 변수! let 예약어를 사용해서 선언하면 블록 변수가 됨!!
ES6부터는 => 표기법(화살표 표기법)을 사용한다. 이 방법은 이름이 없는 함수를 변수에 지정할 때 많이 사용한다.
기존 함수 표기법
var hi = function() {
return "안녕하세요?";
}
hi();
화살표 표기법
let hi = () => "안녕하세요?";
hi();
이벤트
이벤트란 웹 브라우저나 사용자가 행하는 어떤 동작.