타입스크립트와 자바스크립트의 관계에대해서 틀린것을 고르시오.
"strictNullChecks" 를 설정했을때 아래와 같이 코드를 작성하면 에러가 발생한다.
만약 null을 허용하려고 하면 어떻게 코드를 작성해야하는가?
const x: nuber = null;
// ~ 'null' 형식은 'number' 형식에 할당할 수 없습니다.
ox 문제 입니다.
1) 타입 스크립트 컴파일러는 두가지 역할을 한다. 최신 타입스크립트/자바스크립트를 브라우저에서 동작할 수 있도록 구 버전의 자바스크립트로 트랜스파일한다. 코드의 타입 오류를 체크한다.
2) 타입스크립트가 자바스크립트로 변환될 때 코드 내의 타입에는 영향을 주지 않는다.
3) 타입체크와 컴파일이 동시에 이루어지기 때문에 타입오류가 있는 코드는 컴파일이 불가능하다
4) 런타임에는 타입 체크가 불가능하다. 따라서 타입 정보 유지를 위한 방법이 필요하다.
5) 타입 스크립트는 런타임에 타입 정보가 유지된다.
6) 타입 연산은 런타임성능에 영향을 준다.
타입에 열려 있다라는 의미가 무엇인지 서술 하시오.
any 타입에 대한 설명으로 옳지 않은것을 고르시오.
아래 코드에서 추론된 함수의 반환 타입은 number 이다. 이 타입이 기대한것과 다르다면 어떻게 해야하는가?
function add(a:number, b:number){
return a + b;
}
다음 세 타입들의 관계를 벤다이어 그림으로 그려보시오.
interface Vector1D { x: number; }
interface Vector2D extends Vector1D { y: number; }
interface Vector3D extends Vector2D { z: number; }
typeof 연산자에 대한 설명으로 틀린것을 고르시오.
1. typeof 연산자는 타입에서 쓰일 때와 값에서 쓰일 때 다른 기능을 한다.
2. 타입의 관점에서, typeof는 값을 읽어서 타입스크립트 타입을 반환한다. 타입 공간의 typeof는 보다 큰 타입의 일부분으로 사용할 수 있고, type 구문으로 이름을 붙이는 용도로 사용할 수 있다.
3. 값의 관점에서 typeof는 대상 심벌의 런타임 타입을 가리키는 문자열을 반환한다.
4. 자바스크립트 런타임 타입 시스템의 종류는 7개이다. (string, number ,boolean, undefined, object, function, null)
5. class 키워드는 값과 타입 두 가지로 모두 사용된다.
타입 단언에 대한 설명으로 옳지 않은것을 고르시오.
1.타입 단언은 강제로 타입을 지정했으니 타입 체커에게 오류를 무시하라고 하는 것이다.
2. 타입 스크립트가 추론한 타입이 타입 단언보다 우선순위가 높다.
3. 타입 선언문에서는 잉여 속성 체크가 동작하지만, 단언문에서는 적용되지 않는다.
4. 타입 단언은 타입 체커가 추론한 타입보다 우리가 판단하는 타입이 더 정확할 떄 의미가 있다.