반응형
1. Javascript 함수
- 함수 이름, 매개변수, 함수내용으로 이루어져 있습니다.
- 함수는 매개변수를 통해 여러개의 인자를 받아오고 결과를 반환합니다.
- 자바스크립트 함수는 반드시 return값이 존재하며, return 값이 없을 때는 기본 반환값인 'undefined'가 반환됩니다.
- 자바스크립트에서는 void 타입이 없습니다.
1.1 함수 선언문
- 일반적인 프로그래밍 언어에서 사용하는 함수선언방식입니다.
function 함수이름(매개변수) { 함수내용 }
1.2 함수표현식
- 변수를 선언하고 변수에 함수를 할당하는 방식입니다.
var 함수이름 = function(매개변수){ 함수내용 }
1.3 호이스팅(Hoisting)
- 자바스크립트 함수는 실행되기 전에 함수 안에 필요한 변수값들을 미리 다 모아서 최상단에서 선언합니다.
- 실제 코드가 끌어올려지는 것이아니라 내부적으로 그렇게 동작합니다.
- 이때 선언과 할당모두를 상단으로 끌러올리는 것이아니라 선언부분만 상단으로 끌어올립니다.
- 변수에 값을 할당하기 이전에 변수를 호출할 경우 오류가 발생하지는 않고, 자동으로 undefined이 할당됩니다.
예시
// 실제 자바스크립트 코드
function test(){
var name = 'calmdawn'
console.log(name);
}
test();
// 호이스팅에 의해 자바스크립트가 해석하여 동작하는 방식
var test; //끌어올려짐, 아직 함수로 인식하지 못한상태이므로 변수로 인식합니다.
var name; //끌어올려짐
function test(){
var name = "calmdawn";
console.log(name);
}
test();
1.4 함수선언문과 함수표현식 차이점
- 함수선언문은 호이스팅에 영항을 받지만, 함수표현식은 호이스팅에 영향을 받지 않습니다.
- 일반적으로 함수선언문을 자주 사용하지만, 함수표현식은 클로저, 콜백으로 사용합니다.
- 콜백함수 : 특정 시점에 호출되는 함수로, 보통 다른함수의 인자로 전달된 함수입니다.
1.5 arguments 객체
- 모든 함수 내부에서 자동으로 생성되는 지역변수 입니다.
- arguments 객체는 가변인자를 받아 처리할때 유용합니다.
- 인자를 처리할때 arguments를 사용하여 배열의 형태로 접근할 수 있지만 객체타입으로 배열타입이 아닙니다.
반응형
'웹(Web)개발 > 5. Javascript' 카테고리의 다른 글
5. Javascript Ajax 통신 (0) | 2020.10.12 |
---|---|
3. Javascript 비교, 분기, 반복 (0) | 2020.10.12 |
2. Javascript 연산자, 타입 (0) | 2020.10.12 |
1. Javascript 기초(변수, 범위) (0) | 2020.10.12 |