React team repo
Sparta coding
Innovation Camp
w3 day18
Javascript에서 유사배열과 배열의 차이 유사배열의 각 요소를 수정하고 싶을 때 거쳐야 하는 과정은?
- 배열은 변수 하나에 서로 관련있는 데이터를 할당해 관리하는 데이터타입
-
유사배열은 배열처럼 보이지만 key가 숫자이고 length를 가진 객체
- Array.from() method를 사용해 유사배열객체를 복사해 새로운 배열객체를 만듦
- 유사배열에서 사용할 수 있는 call, apply, bind등을 사용
부모 component A, 자식 component B. A는 state로 지닌 {name:”르탄이”}를 B에게 넘김. B는 받아온 name을 화면에 뿌림. A의 state가 {name:”진도사우르스”}로 바뀔 때 lifecycle은?
- 으.. 모르겠음
- props에서 받아온 값을 state에 동기화시켜 update될 때 호출 componentDidUpdate ?
양방향 바인딩이란? 이를 사용할 때 rerendering은? (부모A, 자식B)
- data binding : 화면의 객체와 data 일치 = JS data를 HTML과 일치
- user의 입력값이 코드상의 변수에 바로 바인딩 됨
- 단방향에서는 A는 B에거 props로 늘 data를 보내고 event를 통해서만 B가 A에게 줄수있음 2-way binding은 watacher라는 매개를 통해 data가 수정될때 바로 rerendering
event listener는 등록되면 반드시 해제 class형 component에서 unmount 될 때 event listener를 해제 (componentWillUnmount) 함수형 component에서는 event listner를 어떻게 해제?
- event listener는 momory누수때문에 필요없어지면 반드시 해제
- 함수형은 lifecycle method사용불가, react hook으로 해제
react에서 DOM에 접근할 때 ref사용 document.getElementsByClassName등이아니라 ref를 쓰는 이유는?
- 실제DOM이 아니라 가상DOM을 사용하기 때문에 getElementsByClassName등으로 접근불가
SPA방식과 MPA방식은 무엇?
-
- Single Page Application:한개의 page로 구성됨
- 웹 application에 필요한 resource를 최초 한번에 다운로드
- 필요한 부분만 갱신, 자연스러운 page이동, UX제공
-
- Multiple Page Application:여러개의 page로 구성
- 새로운 page를 요청할 때 마다 resource 다운로드, 매번 전체가 rendering
- 첫 로딩이 짧고 완성된 HTML을 전달받아 검색엔진이 크롤링하기 적합함
DIY section
-
life cycle의 이해?
- react의 life cycle을 이해하지 못하면.. react로 programing할 수 없음
-
Code Convention 이 존재하는 이유 / 장점
- 폴더, 파일, 변수, 함수등 naming할 일이 많음 원하는대로 지어도 되지만 code convention을 지켜 code의 일관성을 높이면 협업을 할 때 가독성이 올라가 code의 의도나 오류를 파악하기 쉽고 팀원 간의 code 충돌을 줄일 수 도 있음 결론적으로 유지보수 비용을 줄일 수 있기 때문에 사전회의를 통해 미리 스타일을 정하고 지켜주는것이 좋음
-
react의 특징
-
가상DOM, 단방향 binding
- memory에 표시되는 DO과 동일한 가상DOM을 만들고 연산한 후 실제 DOM을 갱신함으로써 연산을 최소화
- 2 way binding은 동기화를 신경쓰지않고 program을 작성할 수 있지만 수많은 watcher가 생성되어 성능저하가 발생할 수 있기 때문에 1way biding사용
-