반응형
//#클로젯
//outter외부함수에 inner함수가 정의되어있다.
//클로젯 부분은 따로 공부를 조금 더 해보기!
//외부함수 outter
function outter() {
//내부함수 inner
function inner() {
var title = 'coding everybody';
alert(title);
}
//외부함수 outter()호출 받고나서, 내부함수 inner() 호출함
inner();
}
//외부함수 outer()함수 호출
outter();
//내부함수는 외부함수의 지역변수에 접근할 수 있다.
function outter() {
//외부함수의 지역변수 선언
var title = 'coding everybody';
function inner() {
//외부함수의 지역변수에 있는 변수를 가져올 수 있다.
// var title = 'coding everybody';
alert(title);
}
//내부함수 inner()함수 호출
inner();
}
//외부함수 outer()함수 호출
outter();
// 결국 둘의 값은 같다 !
//arguments(유사배열):배열과 비슷한데, 배열은 아님
//arguments 사용자가 전달한 인자값들이 들어가있음 sum(1,2,3,4)
function sum() {
var i = 0;
var sum = 0;
for (var i = 0; i < arguments.length; i++) {
document.write(i + ':' + arguments[i] + '
');
sum = sum + arguments[i];
}
//sum(1,2,3,4)에서 저장된 값의 합을 return함
return sum;
}
//javascript는 인자값과 매개변수의 갯수가 일치하지않아도 된다.
//반대로 java 같은 경우는 무조건 일치해야함
//sum 함수에서(1,2,3,4) 값을 호출함
document.write('sum result --> ' + sum(1, 2, 3, 4) + '
');
//매개변수 1개
//매개변수 arguments lenght : 어떠한 함수로 유입되었는지 확인할 수 있음
function zero(arg1) {
//매개변수는 zero()함수에서 호출받은 값들을 이야기함
document.write('zero.length, 함수의 매개변수 갯수 --> ' + zero.length + '
'); // 1개
document.write('arguments, 함수 호출할 때의 인자값 갯수 --> ' + arguments.length + '
'); // 2개
}
//함수 인자값 2개
zero('var1', 'var2');
반응형
'IT STUDY' 카테고리의 다른 글
| JavaScript - apply call, 상속 (0) | 2020.02.18 |
|---|---|
| JavaScript - 객체지향 (0) | 2020.02.18 |
| JavaScript - 함수처리, 함수호출(sum.apply()) (0) | 2020.02.17 |
| JavaScript - 유효범위(전역,지역변수,scope) (0) | 2020.02.17 |
| 스프링(STS) 로그 파일로 만들어서 저장하기(log4j 설정) (0) | 2020.02.13 |