javascript

    [JavaScript] 클로저(Closure)에 대해

    js에 대해 관심 있게 공부했던 사람이라면 한 번쯤은 들어 봤을 법한 클로저(Closure)는, 그 정의가 워낙 모호하고 어려워 이해하기 쉽지 않다고 생각한다. 나도 처음에 js를 공부할 때 책에서 클로저에 대해 얘기하는데 누구는 클로저를 어떻게 정의하고, 또 다른 누구는 클로저들 다르게 정의하고 하는 식으로 글이 적혀 있어서 혼란을 겪었던 기억이 있다. 이 글을 읽고도 완벽하게 클로저란 이런 것이다라고 알 수 있지는 않겠지만, 사람들마다 클로저에 대한 정의가 다른 이유 정도는 알게 된다면 좋을 것이라 생각한다. 클로저는 JavaScript만의 개념인가 js를 공부하면서 클로저라는 단어를 봤기 때문에 클로저가 js의 개념이라고 생각할 수도 있지만, 함수를 일급 객체(first-class citizen)로..

    React에서 map() 사용 시 key 값에 대하여

    개발 중에 갑자기 생각난 이슈. 요즘 새로운 프로젝트를 시작하고 있는데, React에서 자주 찾게 되는 Array.prototype.map() 함수에 대하여 고민해 보게 되었다. map()이 어떤 역할을 하는 함수인지, 어떻게 사용하는지에 대한 설명은 생략하고자 한다. 그 내용을 정리하기 위해서 쓴 게시글이라기보다는, 그 내용을 알면서도 활용할 때마다 항상 고민되는 주제에 대해 다루고자 한다. React에서는 map() 사용 시 key props를 사용하는 것을 권장하고 있다. 사실, ESLint 등을 통하여 작업을 하다 보면 설정에 따라서는 map() 사용 시 key를 부여하지 않는 경우 컴파일 타임에서 에러가 나는 경우도 있다. 지금 진행 중인 프로젝트에서도 ESLint를 초기화만 하고 별다른 rul..