1. for…in은 오브젝트 키를 탐색하는 용도다.
1. for…in은 오브젝트 키를 탐색하는 용도다.
처음에 for…in의 존재를 알았을 땐 단순히 ‘엘레강트하게 반복문을 짜라고 만든 문법이구나!’ 라고 생각했지만 틀렸다.
MDN에서 정의한 for…in의 설명을 보면 정확하게 object를 위한 문법이라고 설명되어있다.
문제
어떤 구두 수선공에게 N개의 주문이 들어와 있다. 그는 하루에 한 가지 작업만 할 수 있으며 보통 한 작업을 하는데 며칠이 걸린다. i 번째 작업에 대해 Ti라는 정수는 구두 수선공이 작업을 끝내는데 걸리는 시간이 며칠인지를 나타낸다. 하지만 인기가 좋으면 대가가 따른다. 구두 수선공은 i 번째 작업을 시작하기 전까지 지연되는 날 수를 기준으로 하루에 Si 달러의 벌금을 내야 한다. 벌금의 합계가 최소가 되는 작업 순서를 계산하는 알고리즘을 설명하라.
Context?
Context?
React 공식 블로그에서 정의한 Context는 다음과 같다.
Context provides a way to pass data through the component tree without having to pass props down manually at every level.
쉽게 말해서, 데이터를 일일이 전달할 필요없이 한번에 특정 컴포넌트에 전달하는 방법이다.
React의 단방향 데이터 흐름상, 하위 컴포넌트가 많아질수록 일일이 값을 전달하기가 매우 번거롭다.
Context API는 그런 불편함을 해소하고자 만들어졌다.
cd : 경로 이동 (cd ~/)
ls : 폴더 내 파일목록 출력
cp : 파일 복사 (cp from/a.txt to/b.txt)
rm : 파일 삭제 (rm a.txt)
mkdir : 폴더 생성 (mkdir test)
rmdir : 폴더 삭제 (rmdir test), 폴더의 모든 하위 디렉토리까지 강제 삭제: rm -rf test
touch : 빈 파일 생성 (touch testfile)
cat : 파일 내용 출력 (cat a.txt) - 출력한 파일 내용을 드래그해서 복붙 가능.
vim : vim 에디터 열기 (vim test). 짧게 vi로 해도 vim으로 연결된다.
CMD+T : 새 탭 생성
CMD+K : 터미널 화면 청소
CMD+N : 새 터미널 화면