티스토리 뷰
여러분은 string[]과 [string]이 다른 것이라는 사실을 알고 계십니까...?
오늘 ChatGPT에게 물어보며 문제를 해결하던 중 새로운 개념을 발견했다.
[string] is a tuple type with a single element of type string,
while string[] is an array type that can have zero or more elements of type string.
const tuple: [string] = ["hello"]; // valid
const array: string[] = ["world"]; // valid
const anotherTuple: [string] = []; // error: expects exactly one element
const anotherArray: string[] = []; // valid: empty array
In general, tuples are used when you want to represent a fixed-length collection of values of different types, while arrays are used when you want to represent a variable-length collection of values of the same type.
[string]과 string[]은 다르다..!
[string]은 문자열을 1개만 가지는 고정된 타입이고, string[]은 문자열을 요소로 가지는 배열 타입이다.
[string]은 무조건 요소 1개를 가지고 있어야하고, string[]은 빈문자열도 가능하다.
// [string]
const strArr1 : [string] = ['hello'] // 문제 없음
const strArr2 : [string] = [] // 에러 : Type '[]' is not assignable to type '[string]'. Source has 0 element(s) but target requires 1.
// string[]
const stringArr1 : string[] = ['hello'] // 둘 다 문제 없음
const stringArr2 : string[] = []
여러개도 가능하다.
const twoStrArr1 : [string, string] = [] // Type '[]' is not assignable to type '[string, string]'. Source has 0 element(s) but target requires 2.
const twoStrArr2 : [string, string] = ['hello'] // Type '[string]' is not assignable to type '[string, string]'. Source has 1 element(s) but target requires 2.
const twoStrArr3 : [string, string] = ['hello', 'world'] // 문제 없음
728x90
'TIL' 카테고리의 다른 글
TIL 230425 기초 부족.. 정처기 공부가 답이었구나~ (0) | 2023.04.25 |
---|---|
TIL 230413 React-router-dom createBrowserRouter로 보기 편하게 라우터 만들기 (0) | 2023.04.13 |
TIL 230329 Vue.js와 Vuex에 대해 공부하고 알게 된 것 (0) | 2023.03.30 |
TIL 230328 useQuery와 useMutation (0) | 2023.03.29 |
TIL 230327 React-Query study with ChatGPT (0) | 2023.03.28 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 리액트
- Python
- Typescript
- 김버그
- 타입스크립트
- html
- 제로초
- javascript
- 파이썬
- CSS
- 비주얼스튜디오코드
- 코드잇
- 깃
- 구름에듀
- git
- vscode
- 회고
- vue
- 저스트코드
- 드림코딩
- Til
- 제이쿼리
- scss
- 스파르타코딩클럽
- TS
- 코딩앙마
- js
- map
- 자바스크립트
- React
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함