단락 회로 평가
535
작성한 질문수 24
단락 회로 평가에서 isVisible이 true이면 반드시 뒤에 컴포넌트가 렌더가 되는데 왜 그럼 컴포넌트는 항상 true인가요?
근데 원래가 && 연산자는 앞 뒤 모두 true여야 true인데 이지비지블이 true면 왜 뒤에 컴포넌트는 항상 true인지 궁금합니다?
답변 1
0
안녕하세요 초록천사님
이정환입니다.
손가락 부상(화상을 크게 입었어요 😭)으로 인해 답변이 지연되고 있는 점 양해 부탁드립니다.
질문 주신 내용은 자바스크립트의 truthy & falsy로 인해 발생하는 현상입니다.
간단하게만 요약하자면 자바스크립트는 true, false같은 불리언 자료형의 값이 아니더라도
조건식에 값이 사용되면 참이나 거짓으로 판단하는 특징을 갖고 있습니다.
여기에 단락 회로 평가가 적용되면 특이한 현상이 한개 더 발생하는데요
다음과 같은 식의 결과는 true가 아니라 truthy한 값으로 평가됩니다.
true && truthy한 값 (예를 들면 10)
그러므로 isVisible && <컴포넌트/> 요런 식은 isVisible이 true일 경우 컴포넌트는 truthy한 값이기 때문에 컴포넌트가 그대로 반환되는 것 입니다.
Editor Component의 최적화 불가능 이슈
0
60
2
useCallback ⊂ useMemo
0
47
2
라이브러리 설치 질문
0
58
2
linter 질문
0
61
2
감정일기장 vercel 배포 후 새로 고침 시 404페이지가 뜨는 이유
0
62
2
Sort 메서드 관련 아티클
0
65
2
4.1) React.js를 소개합니다 강의를 듣고 궁금한 점이 생겼습니다.
0
56
2
html, body에 적용하는 css 스타일 질문입니다.
0
62
2
eslint.config.js 설정 질문입니다.
0
105
2
존재하지 않는 일기 url입력 시 alert이 두 번 떠요
0
74
1
교재(3쇄)와 강의 내용 문의
0
76
2
12.13) 하단 여백 스타일링 관련 질문 드립니다.
0
103
2
에러 질문드립니다
0
120
2
VSCode 설정 문의
0
152
2
PPT 코드 관련 질문
0
74
2
useEffect와 lifecycle문의
0
98
2
프론트엔드 학습 수준 문의
0
113
2
리액트 챕터별 코드에서 eslint 설정파일이 없어요
0
118
2
데이터 로딩중 화면만 계속 나와요!!
0
110
2
퍼블리셔일경우 어느정도 수준까지 강의를 들어야할까요
0
142
2
이후의 커리큘럼 문의
0
162
2
실슬환경 설정에서 save후 console.log 부분이 새로고침이 안되는현상입니다.
0
125
2
최적화 관련 질문있습니다 (useMemo 등)
0
138
3
프로바이더 컴포넌트의 위치는 어떤 기준인가요?
1
131
3





