자바스크립트에서 !! 을 사용한 명시적 형변환
코드 리뷰에서 다른분들 코드를 보면서 다음과 같은 궁금증이 생겼다. 내 궁금증은 다음과 같았다. 저렇게 not 연산자를 두번사용해야하는 경우가 따로 있나요? if 문에 그냥 undefined 가 들어가더라도 해당 if문은 동작을 하지 않을 것이라고 생각하는데, 분명 이유가 있어서 저렇게 쓰셨을텐데 잘 이해가 안갑니다. 실무를 할때 저런코드를 사용한다고 하시니 더더욱 알고싶어서 부득히 하게 메일까지 드리게되었습니다. 그렇다 저 로직을 짜신분의 메일로 해당 궁금증을 보냈는데, 정말 친절하게 답변해주셨다. Answer !! 를 사용하는 이유는 "명시적 boolean 형변환" 을 위함입니다. 말씀 주신대로 if (undefined) {...} 나 if (!!undefined) {...} 나 코드의 기능은 완전히..
자바스크립트의 null type 에 대한 궁금증
공부를 하던중에 null이 할당된 변수의 type을 다루게 되었다. 코드는 다음과 같다. 위 코드를 실행하면 "first"가 출력이 된다. 그런데 궁금증이 생겼다. 왜 null 이 할당이 되었는데 object 로 primitive type이 나오게 되는걸까? 그래서 오픈채팅방에 질문을 드렸다. 답변은 다음과 같다. js 가 설계될때 모든 것은 object라고 설계가 되어있다. null 뿐만 아니라 배열 또한 마찬가지이다. 그러므로 만약 위와같은 상황에서 null 일때는 내가 원하는 로직이 되지 않을 가능성이 크기 때문에 다음 코드 처럼 short-cut evaluation을 사용해서 null일때 아닌지를 구별해주거나, !!를 사용해서 형변환을 해준다. if(yourVariable != null && ty..
[웹 퍼블리싱] codepen
탭바 관련해서 검색키워드을 어떻게 해야할지 모르겠어서 질문을 드렸다. 구글링해서 마땅히 잘 안나오면 codepen에 검색해보라고 하셔서 검색했더니 바로 찾았다. https://codepen.io/Kapilnemo/pen/pbEbQy Google Material Design Tab Bar ... codepen.io 비록 익명이지만 답변해주신 분에게 정말 감사하다고 말씀드리고 싶다.
리덕스 툴킷 - 구조분해할당 관련 질문
질문한 사진들 솔직하게 명료한 해답을 얻을 수 없어서 동영님께 따로 질문을 드려봤다. 1번은 구조분해할당인데, 이게 구조분해 할당인 것을 알고는 있었지만 정확하게 알지는 못했던 것 같다. 다음과 유사한데 1번은 하나의 객체를 찢어서 할당시키는 것이다. 그렇다면, 1번과 같은 경우 하나의 값이 업데이트 되면 그값을 가져오기위해 다시 객체를 가져와서 다시 찢어내야한다. 그렇기 때문에 아래와 같은 설명을 한 것이다. 그래서 나는 2번이 코드는 더 길지만 성능적으로 더 좋다고 판단하였다.
[Redux Toolkit] A non-serializable value was detected in an action
현재의 생각은 저렇게 non - serialized 한 값들은 context api 에 저장을 해야한다는 것이다. 그런데 왜 그래야하는지 근거가 없다. 내 실력으로는 테스팅 할 방법을 모르겠다. 속상하다.