ES6 Helper Method 자바스크립트로 개발하다보면, 가장 많이 사용하는 함수 (forEach, map, filter, find, reduce) 들이 있는데 다른 함수 안에서 특정 기능을 하고 있는 것을 Helper Method 라고 부른다. 해당 함수들이 헬퍼 메소드라는 별도의 명칭이 있다는 것을 최근에 알게되었다. 아무리 자주 사용해도 제대로 응용하지 못하고 있는 것 같아 기본기를 다지고자 정리하게 되었다. forEach 배열의 각각에 대한 요소를 실행하는 메소드이다. arr.forEach(callback(currentvalue[, index[, array]])[, thisArg]) callback 함수에서는 3가지의 매개변수를 받는데, currentvalue 는 처리할 현재 요소, index..
자바스크립트 검색 결과
클로저 클로저(Closure) 는 여러 함수형 프로그래밍 언어에서 등장하는 보편적인 특성이다. 클로저란, 어떤 함수에서 선언한 변수를 참조하는 내부함수에서만 발생하는 현상이다. 어려운 내용인 듯하니, 예제를 통해 살펴보자. var outer = function() { var a = 1; var inner = function() { return ++a; }; return inner(); }; var outer2 = outer(); console.log(outer2); // 2 outer 라는 함수에 지역변수 a가 선언되어있는데, outer 함수의 실행 컨텍스트가 종료된 시점에도 a 변수는 사라지지 않고 1이 증가된 모습을 확인할 수 있다. inner 함수 실행시점에 outer 함수는 실행이 종료된 상태임에..
콜백 함수 (Callback Function) 콜백 함수란, 영어 뜻 그대로 callback은 call (부르다, 호출하다) 과 back (뒤돌아오다, 되돌다) 의 합성어로 되돌아 호출해달라는 명령입니다. 쉽게 설명하면 함수 A 를 호출하면서 '특정 조건일 때 함수 B 를 실행하여 나에게 알려줘!'라는 뜻이죠 어려운 용어로 설명하면, 콜백함수는 다른 코드 (함수 또는 메서드) 에게 인자로 넘겨줌으로써 그 제어권도 함께 위임하는 함수란 것입니다. 콜백 함수를 위임받은 코드는 자체적인 내부 로직에 의해 이 콜백 함수를 적절한 시점에 실행할 것입니다. 줄글로 설명하면, 어려우니 예제를 통해 구체적으로 살펴보겠습니다. function fn_sum(a, b, callback) { var sum = a + b; c..
this 파헤치기 this 는 객체지향언어에서 클래스로 생성한 인스턴스의 의미한다. 하지만 JavaScript 에서의 this 는 어디서든 활용이 가능하다. JavaScript 에서 this 는 기본적으로 실행 컨텍스트가 생성될 때 함께 결정된다. 실행 컨텍스트는 함수를 호출할 때 생성되므로, this 는 함수를 호출할 때 결정된다고 이해할 수 있다. 전역공간에서의 this 는 전역 객체를 가르킨다. 전역 컨텍스트를 생성하는 주체가 바로 전역 객체이기 때문이다. 참고로 브라우저 환경에서 전역객체는 window이고, Node.js 환경에서는 global이다. var a = 1; console.log(a); // 1 console.log(window.a); // 1 console.log(this.a); //..
실행 컨텍스트 (Execution Context) 실행 컨텍스트란? 실행할 코드에 제공할 환경 정보들을 모아놓은 객체로서, JavaScript 의 동적언어의 성격을 가장 잘 나타내는 개념이다. JavaScript 는 어떤 실행 컨텍스트가 활성화되는 시점에 선언된 변수를 위로 끌어올리고(호이스팅의 개념), 외부 환경 정보를 구성하고, this 값을 설정하는 등의 동작을 수행한다. 실행 컨텍스트라는 개념을 이해하는 것은 개발자의 성장으로서 가장 중요한 핵심이니 꼭 이해하고 넘어가도록 하자. 실행 컨텍스트를 이해하기 전 스택(stack) 과 큐(queue) 의 개념부터 살펴보자. 스택(stack) 은 출입구가 하나뿐인 깊은 우물같은 데이터 구조이다. 비어있는 스택에 순서대로 데이터 a, b, c, d 를 저장..
데이터 타입(기본형과 참조형) JavaScript 의 데이터 타입에는 두 가지 종류가 있습니다. 기본형과 참조형입니다. 데이터 타입에 대해 자세히 알아보겠습니다. 1. 기본형 - 값이 담긴 주소값을 바로 복제 ex) 숫자, 문자열, 불리언, null, undefined (null과 undefined 의 차이점이란?), Symbol(ES6추가) 2. 참조형 - 값이 담긴 주소값들로 이루어진 묶음을 가리키는 주소값을 복제 ex) 객체, 배열, 함수, 날짜, 정규표현식 ES6에 추가된 Map, WeakMap, set, WeakSet 먼저, 기본형은 불변성(Immutability) 의 성격을 띄우는데, 불변성을 이해하기 위해서는 메모리와 데이터에 대한 지식과 식별자와 변수의 개념을 이해해야합니다. 이번엔 메모리..
최근댓글