Javascript 클로저란? (바로 하단의 블로그를 참고하여 정의해보면) 하단의 일반적으로 어떤 함수가 자신의 내부가 아닌 외부에서 선언된 변수에 접근하는 것이다. 이렇게 서술하면 무슨말인지 잘 모르겠다면, 더 풀어서 설명하면 정의한 함수를 리턴하고 실제 클로저의 사용은 스코프 정의한 함수를 리턴하고 사용은 밖에서 사용한다. 라고 설명하면 또 무슨소린가 와닿지 않을경우 아래와 같이 코딩을 해보았다. function getfn() { const text = 'closure!!!'; return function() { return text; }; } const closure = getfn(); console.log(closure()); // @결과 : closure!!! 위와 같이 getfn안에 funct..
오늘은 Javascript reduce에 대해서 포스팅 해봅니다. reduce 메소드는 현업에서도 종종 쓰이며, 알고리즘 꽤 많은 것을 구현할 수 있습니다. Reduce reduce에서 첫번째 인자인 누적값(accumulator)과 두번째 인자인 현재값(currentValue)을 가지고 있습니다. 보통 배열의 합을 구하거나, 특정 배열의 중복 제거, 같은 값을 찾을 때 사용할 수 있습니다. // 1. 배열의 합 const arr = [1, 7, -8, 5, 2]; //sum = 7 const result = arr.reduce((accu, curr) => { //accu : 누산값, curr 현재 누산할 값 // console.log('[accu] : ', accu, ', [curr] : ', curr,..
오늘의 포스팅은 배열에 관한 예제입니다. String을 배열로 변경하고싶거나, 배열내 연산이 필요할때 Array.from을 사용해봅니다. 사실 이 외에도 Array.from으로 할 수 있는건 생각보다 많습니다. Array.from() 메서드는 유사 배열 객체(array-like object)나 반복 가능한 객체(iterable object)를 얕게 복사해 새로운Array 객체를 만듭니다. Array.from(arrayLike[, mapFn[, thisArg]]) * arrayLike : 배열로 변환하고자 하는 객체 * mapFn (Optional) : map * thisArg (Optional) : map 실행시 this로 사용할 값 String → 배열, 배열 내 연산 (덧셈, 곱셈 등) // Stri..
이벤트 버블링, 이벤트 캡처 그리고 이벤트 위임까지 (기본) 이벤트 버블링, 이벤트 캡처링, 그리고 이벤트 위임까지 이벤트 전달 방식과 관련된 모든 것을 파헤쳐 봅니다. joshua1988.github.io 이번 포스팅에서는 위의 블로그를 참고하여 이벤트 버블링과 캡처에 대해서 알아보고자 한다. 먼저 이벤트 버블링과 캡처에 대해 알기 전, 이벤트 등록을 위해 아래와 같이 작성하였다. 1) 이벤트 등록방법 : addEventListener HTML Button-Click first-class second-class third-class JS //button이라는 선태자 or 요소를 선택한다. const btn = document.querySelector('button'); //'click' event를 등..