JavaScript

[JavaScript] Primitive type을 Object literal(Object type)으로 변환

SangRok Jung 2022. 4. 14. 09:52
반응형

 

Primitive type을 Object literal(객체 자료형)로 변환

 

▶ 형식

<body>
    <script>
        const a = new Number(10);

        a.jsr = '정상록';

        console.log(a.jsr)
        console.log(a.valueOf());

        //정상록
        //10
    </script>
</body>

 

※ new

new 연산자는 사용자 정의 객체 타입 또는 내장 객체 타입의 인스턴스를 생성한다.

 

구문

new constructor[([arguments])]

매개변수

constructor객체 인스턴스의 타입을 기술(명세)하는 함수argumentsconstructor와 함께 호출될 값 목록

 

 

※ Number()

Number 는 37이나 -9.25와 같은 숫자를 표현하고 다룰 때 사용하는 원시 래퍼 객체입니다.

다른 타입의 값은 Number() 함수를 사용하여 숫자로 바꿀 수 있습니다.

 

 

※ Number.prototype.valueOf()

valueOf() 메서드는 Number 객체가 감싼(wrapped) 원시 값을 반환합니다.

 

 

 

 

 

 

 

기본 자료형의 일시적 객체형 변환

  • 기본자료형은 메소드나 속성을 가질 수 없음
    • arrayObject.length 와 같이 메서드(.length)는 객체에만 적용할 수 있다. 하지만 일시적으로 이를 가질 수 있게끔 기본형을 객체형으로 변환하여 묵시적으로 변환하여 개발자에게 편의성을 제공한다.

예시

<body>
    <script>
        const a = 'Hello';

        const strlen = a.length; //일시적 객체화
        //           = (new String(a)).length

        console.log(strlen)

        //5
    </script>
</body>

 

 

 

개발자가 문제를 대하는 태도.
1. 예상되는 문제에 대한 해결.
2. 추가되는 문제에 대한 고려(확장성).
반응형