구조분해할당 Destructuring Assignment

kimdev·2022년 5월 21일
0

타입스크립트에서의 구조분해할당.

타입스크립트에서는 각 변수마다 어떤 데이터형식의 값이 들어갈 것인지 미리 지정해 줘야한다.

이를 구조분해할당이라고 하는데 이를 활용함으로써 에러의 확률을 상당히 줄일 수 있다고 한다.


예를들어 변수 aaa:String = 'helloWorld'; 일때
이 변수에는 이제 문자열 말고는 들어가지 못하는 것이다.

각 변수,함수,객체,배열 등에서의 사용법

export default function TypescriptPage() {
    //타입 추론
    let aaa = '안녕하세요'
    aaa = 132
    //타입 명시
    let bbb:string = "반갑습니다."

    bbb = 12313131

    //문자타입
    let ccc:string
    ccc = "반가워요"

    //숫자타입
    let ddd:number
    ddd = 1231

    //블린타입
    let eee:boolean = true
    eee = "false" //자주 발생하는 실수 (빈문자열이 아니라 true로 동작한다 타입스크립트에서는 이를 막아준다.)
    
    //배열 (숫자가 들어가는 배열, 문자가들어가는 배열, 등ㄷ으)

    let fff:number[] = [1,2,3,4,5,6,1,6,12,43,2]
    let ggg:string [] = ["철수", "영희" , "훈이" , 10] 
    // 명시를하지않으면 10이 들어간다. (문자string 또는 숫자number 가 들어갈 수 있는 배열이라고 판단함)
    let ooo = ["철수", "영희" , "훈이" , 10]

    //객체 (타입이 없고 사용자가 직접 만들어야함.)
    //타입이 없더라도 타입추론은 가능하다.
    interface IProfile {
        name:string,
        age:number | string, // 추론으로 만들면 이런방식을 사용하지 못함.
        school:string
    }

    const profile: IProfile = {
        name: "철수",
        age: 8,
        school: "다람쥐초등학교"
    }
    profile.age="8살" //추론으로 만들면 age가 넘버로 추론되어 문자열 입력이 되지 않는다.

    //함수타입
    const add = (money1:number , money2:number , unit:string):string => {
        return money1 + money2 + unit
    }

    const result = add(1000,2000,"won")
    console.log(result)



    return <div> 타입스크립트 연습하기 </div>
}

0개의 댓글