오늘 공부한 이것 저것.
pm2나 sequelize-cli 같은 package를 command line에서 실행하기 위해서는 해당 package를 global로 설치해야 했다.
npx를 사용하면 해당 package를 global로 실행하지 않고도 실행할 수 있다.
global로 설치하면 해당 project 환경에 국한되지 않고 영향을 끼칠 수 있다. major 버전이 변경될 경우 기존 project가 동작을 안하는 경우가 발생할 수도 있다.
npx는 해당 project에 설치된 package를 바로 실행할 수 있다.
create-react-app 같은 도구를 npx로 실행하면 항상 최신 버전이 설되고, 설치된 후에 해당 package를 제거한다.
Typescript가 .ts
파일을 transcompile 할 때 사용할 옵션을 정의해둔 파일.
{
"compilerOptions": {
"strict": true
}
}
자세한 compilerOptions은 다음의 site에서 확인할 수 있다.
사용한 옵션들은 추후에 다시 한번 정리해보자.
const array: (string | number | boolean)[] = [1, true, '3'];
배열에 여러 type의 데이터가 포함될 경우 위와 같이 작성한다. type의 순서를 고려할 필요없이 3가지 유형에 포함되기만 하면 된다.
배열의 크기가 고정되어 있는 경우 다음과 같이 표현한다.
const fixedArray: [number, boolean, string] = [1, true, '3'];
이 경우 type의 순서도 일치해야 한다. 이것은 tuple이라고 부른다.
(tuple은 index로 변경하는 것은 안되지만 push는 된다. 주의!)
아예 상수처럼 사용할 수도 있다.
const fixedArray = [1, true, '3'] as const;
// const fixedArray: readonly [1, true, "3"]
뒤에 as const
를 붙이면 상수처럼 고정할 수 있다. fixedArray의 정보를 확인하면 주석과 같이 출력된다.
as const
는 객체를 상수처럼 만들 때 유용하다.
const fixedObject = { a: 3 } as const;