TS #10 : 객채 래퍼 타입 피하기
객체 래퍼 타입 피하기
자바스크립트에는 객체 이외에도 기본형 값들에 대한 일곱가지 타입(string, number, boolean, null, undefined, symbol, bigint)이 있다.
이중 string, number, boolean, null, undefined은 이전 자바스크립트부터 존재해왔고, symbol은 ES2015에서 추가되었고, bigint는 최종 확정단계에 있다고 한다.
기본형들은 모두 immutable이며 method를 가지지 않는 점에서 객체와 구분된다.
'primitive'.charAt(3);
위 코드는 string 기본형인데, 메서드를 가지고 있다. 이건 기본형 자체에 메서드가 있는것이 아니라, 자바스크립트에서 기본형에 메서드를 사용 할 때, String 객체로 래핑하고, method를 호출하고, 마지막에 래핑한 객체를 버리는 과정을 거치고 있다.
function isGreeting(phrase: String) {
return [
'hello', 'good day'
].includes(phrase);
}
위 코드는 애러가 발생하는데, String은 객체기 때문에 string 기본형에 할당 할 수가 없어 에러가 발생한다.
되도록이면, 반드시 필요한 경우가 아니라면 기본형을 사용하고 객채 래퍼 타입을 피하는 것이 좋다.
Author And Source
이 문제에 관하여(TS #10 : 객채 래퍼 타입 피하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@heojeongbo/TS-10-객채-래퍼-타입-피하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)