tuple type은 array에 붙일 수 있는 타입인데 자료의 위치까지 정확히 지정할 수 있는 타입
let Dog : [string, boolean];
Dog = ['리트리버',true]
function Def(...x:[string,number]){
console.log(x)
}
Def('Kim',123)
Def('Kim',123,321) //error
Def('kim','choi') //error
type Num = [number,number?,number?]; //가능
type Num = [number,number?,number] // 불가능
let arr = [1,2,3];
let arr2 : [number, number, ...number[]] = [4,5,...arr]
function Def(...rest:(string|number)[]){
let res : [string[],number[]] = [[],[]]
rest.forEach((a)=>{
if(typeof a === 'string'){
res[0].push(a)
}else {
res[1].push(a)
}
})
return res
}