본문 바로가기

자바스크립트4

[Javascript] 함수 선언식, 표현식 이전에 대충 정리한 함수 선언식, 표현식 글을 보니 너무 대충 공부한 티가 나서 다시 정리한다. 이전글 우선 호이스팅 을 알아야한다. 함수 선언식과 표현식의 차이점은 호이스팅에 영향을 받는가?이다. 함수선언식은 호이스팅에 영향을 받지만, 표현식은 받지 않는다. // 실행 전 logMessage(); sumNumbers(); function logMessage() { return 'worked'; } var sumNumbers = function () { return 10 + 20; }; 호이스팅 되면 아래와 같이 인식된다. // 실행 시 function logMessage() { return 'worked'; } var sumNumbers; logMessage(); // 'worked' sumNumber.. 2019. 11. 8.
[Javascript] 콜백함수(Callback function) 콜백함수 정의를 찾아봤다. 콜백(Callback)이란 옵저버(Observer) 디자인 패턴에서 나온 개념으로 객체의 상태 변화(이벤트)가 발생하였을 경우에 이러한 사실을 함수를 통해 전달하게 되는데, 이를 콜백 함수라고 합니다. 콜백함수는 javascript 특히, ajax나 jQuery를 사용할 때, 알게 모르게 많이 사용하고 계셨을 것입니다. $("#myButton").on("click",function () { // 콜백 함수 }); $.ajax({ url :"URL", type:"GET", success:function () { // 콜백 함수 }, error:function () { // 콜백 함수 }, complete:function () { // 콜백 함수 } }); 출처: https://b.. 2019. 11. 7.
[Javascript] 1급 객체(First-class object) 1급 시민 변수에 담을 수 있다. 함수(혹은 메소드)의 인자(매개변수, Parameter)로 전달할 수 있다. 함수(혹은 메소드)의 반환값(return)으로 전달할 수 있다. 자바스크립트에서 원시 값(일반 자료형)은 1급 객체이다. var temp_int = 1; // 숫자는 변수에 담긴다. function fn_test_int(a){ return a; } var ret_int = fn_test_int(3); // 숫자는 함수의 인자가 된다. console.log(ret_int); // 숫자는 함수의 리턴이 된다. 1급 객체 * 1급 객체란, 말 그대로 1급 시민의 조건을 충족하는 객체(Object) 입니다. javascript에서 객체는 1급시민입니다. 자바스크립트의 개체는 함수의 인자가 될 수 있다... 2019. 11. 6.
[Javascript] Closure 클로저에 대해 공부를 하다보니, 아래와 같이 다양하게 표현된다. '함수 밖에서 선언된 변수를 내부에서 사용할 때 클로저가 생겨난다.' 함수 내부에 함수를 작성할 때마다, 클로저를 생성한 것이다. = 내부에 작성된 함수가 클로저. 이해가 잘 되지않아 예제로 살펴봤다. function closerFnc() { function outer(){ var innerValue = 'remember'; function innerFnc(){ console.log(innerValue); } //outer함수 내부에 innerFnc선언 후 return return innerFnc; } var globalFnc = outer(); globalFnc(); } 위 코드를 보면, 1. outer함수 내부에 innerValue라는 .. 2019. 10. 22.