Programming/JavaScript&Frameworks
[React] useEffect 내 무한루프 원인 (Error Maximum Update depth exceeded)
[React] useEffect 내 무한루프 원인 (Error Maximum Update depth exceeded)
2020.09.19배경 김뉴비는 사내 관리자페이지를 React, Redux-saga로 만들기로 했다. 천천히 학습시간을 갖고 개발하면 좋았겠지만, 시간이 부족해 개발부터하고 버그를 수정하며 React를 알아가는 중이다. 원하던 기능 DB에서 type별로 최신 컨텐츠 목록을 조회해서 store에 담는 것 (아래 코드는 예제를 위해 변형한 것입니다.) const ContentListContainer = () => { const type = 'help'; const dispatch = useDispatch(); const {list, error, loading} = useSelector((contentList) => ({ list: contentList.list, error: contentList.error, })); useE..
JavaScript 새로운 Null 처리 방법 - Optional chaining(?.) & Nullish coalescing operator(??)
JavaScript 새로운 Null 처리 방법 - Optional chaining(?.) & Nullish coalescing operator(??)
2019.12.16자바스크립트에서 null 처리를 간결하게 하는 유용한 연산자가 추가될 예정이다. 아래 두 연산자는 포스팅 시점(2019.12)을 기준으로 TC39 proposal stage 3 단계이다. Optional chaining (?.) Nullish coalescing operator (??) Optional chaining (?.) ?. 연산자는 chaining operator( . )와 마찬가지로 객체 내부에 위치한 속성 참조 및 함수에 접근할 수 있다. 차이점이라면, ?. 연산자는 nullish(null or undefined)를 참조해도 에러 대신 undefined를 반환한다는 것이다. const user = { name: 'Alice', home: { addr: 'Seoul', contact: '02-..
자바스크립트는 정말 싱글스레드일까?
자바스크립트는 정말 싱글스레드일까?
2019.12.09자바스크립트는 싱글 스레드(Single thread) 언어라고 알려져 있다. 엄밀히 말하자면 자바스크립트의 메인 스레드가 싱글 스레드인 것이다. 하지만 크롬과 같은 웹 브라우저가 자바스크립트를 실행하는 원리를 살펴본다면 단순히 싱글 스레드 언어라고 말하기 어렵다. 이를 이해하기 위해 이벤트 루프(Event loop)와 모던 브라우저 구조를 한 번 살펴보자. 시작하기 전에 본 포스팅은 코드스피츠(CodeSpitz) 강의 내용을 정리한 글입니다. 스스로의 이해를 위해 여러 자료를 참고하여 정리하였으며, 출처는 맨 하단에서 확인할 수 있습니다. 아래 유튜브 링크를 클릭하면 녹화된 강의를 볼 수 있습니다. 코드스피츠 85회 차 None Blocking Javascript 키워드 스레드(thread) : 프로세스..