Typescript Non-null assertion operator and Definite Assignment Assertions

김병민·2022년 2월 9일
0

자바스크립트 공부

목록 보기
11/16
post-thumbnail

Typescript

타입스크립트는 자바스크립트를 기반으로 정적 타입 문법을 추가한 프로그래밍 언어이다. 타입스크립트는 변수,함수의 타입, 목적 등을 명시하여 잘못된 사용에 대한 에러를 발생시켜 버그 제거에 도움을 준다.

Non-null assertion operator

Non-null assertion operator는 변수에 값이 들어가기 전 컴파일러에게 null이 아니라고 말해주는 역할을 한다. Null의 조건을 유연하게 만들어주는 역할

ex

function nonNullAssertionOperator(e: string | null):string {
  return e; 
}
//Type 'string | null' is not assignable to type 'string'.

sol

function nonNullAssertionOperator(e: string | null):string {
  return e!; 
}

Definite Assignment Assertions

Definite Assignment Assertions는 컴퍼일러에게 이 변수는 무조건 값이 존재한다고 말해주는 역할. Definite Assignment Assertions을 사용하면 값이 없어도 해당 변수를 사용할 수 있다.

ex

let notNull : string 

console.log(notNull)
//Variable 'notNull' is used before being assigned.

값이 지정되기 전에 사용되었다고 컴파일러가 오류라고 말해줌

sol

let notNull! : string 

console.log(notNull)

Definite Assignment Assertions을 사용하여 "이건 좀 따 값이 무조건 들어와"라고 말해줌

profile
I'm beginner

0개의 댓글