javascript(2)
-
Java Script - 클로저
function outter(){//외부함수 var title = 'coding everybody'; return function(){//내부함수 alert(title); } } var inner = outter(); inner(); 외부함수 outter에 내부함수가 정의되어 있고, 내부함수를 return하고있다. outter함수는 return하고 있다. 그럼에도 불구하고 내부함수에서는 외부함수의 지역변수title에서 가져와서 inner를 호출하고있다. inner함수를 호출한다는 것은 내부함수에 있는 alert(title)이라고 하는 이 구문을 실행 하는 것인데 title은 내부함수에 존재하는 값이 아니고 외부함수 outter에 존재하는 값이다. 즉, 외부함수는 이미 종료되었는데 우리는 그 외부함수로 인..
2024.03.24 -
JavaScript - 함수 : 값으로서 함수
JavaScript에서는 함수도 객체다. 다시 말해서 일종의 값이다. 거의 모든 언어가 함수를 가지고 있다. JavaScript의 함수가 다른 언어의 함수와 다른 점은 함수가 값이 될 수 있다는 점이다. 다음 예제를 통해서 그 의미를 알아보자. function a(){} //var a=function(){}와 동일함 위의 예제에서 함수 a는 변수 a에 담겨진 값이다. 또한 함수는 객체의 값으로 포함될 수 있다. 이렇게 객체의 속성 값으로 담겨진 함수를 메소드(method)라고 부른다. a = { b:function(){ } }; 변수 a에 객체를 정의함 ( 객체는 중괄호로 시작해서 중괄호로 끝) 객체안에 b라는 key가 있음 key의 값은 function이라는 값(value)이 있음 b(key)는 이 객..
2024.03.24