inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바스크립트 비기너: 튼튼한 기본 만들기

3. Object 인스턴스 생성, 프리미티브 값 구하기

생성자에 대한 질문입니다.

해결된 질문

127

Dae Jun LEE

작성한 질문수 2

1

안녕하세요~!
오브젝트 인스턴스 생성에서 new 를 쓰는 것과 안쓰는것이 같은 인스턴스를 생성한다고 강의에서 말씀하셨습니다.

var thrObj = Number('123');
var fourObj = new Number('123');

console.log(thrObj);
console.log(fourObj);

console.log(thrObj.toString());

1.이 코드에서 thrObj 는 초기에 프리미티브 값이며, toString()이 호출되는 시점에 인스턴스를 생성하여 함수를 호출한다면,
만약 toString()호출 이후에 thrObj에 다른 함수를 호출하면 인스턴스를 새로 생성하게 되는 것인가요?

2. 위와 같이 대입하여 생각했을때, Object 인스턴스 생성에서는 new를 붙이던 안붙이던 함수를 호출하기 이전에 이미 인스턴스를 생성하는것인가요?

javascript oop

답변 1

3

김영보

var thrObj = Number('123'); ==> String 타입 "123"을 Number 타입 값으로 변환합니다. 따라서 thrObj보다는 thrValue가 더 적절합니다.

var fourObj = new Number('123'); ==> 우선 Number 인스턴스를 생성합니다. 인스턴스에 String 타입 "123"을 Number 타입 값으로 변환하여 프리미티브 값으로 설정합니다. 따라서 fourObj는 인스턴스입니다.

console.log(thrObj); ===> 이것은 변숫값을 출력합니다.

console.log(fourObj); ==> 인스턴스를 출력해야 하지만, 프리미티브 값을 갖는 인스턴스는 인스턴스를 출력하지 않고 인스턴스에 설정된 프리미티 값을 출력합니다.

console.log(thrObj.toString()); ==> Number 타입 값 123을 String 타입 "123"으로 변환합니다.

프론트엔드 부트캠프 가기 전, 짧은 감사 인사드립니다!

2

109

2

섹션10 3. Object 프리미티브 값 구하기에서 질문있습니다.

1

149

2

섹션3의 1강 연산자, 표현식 강의에서 표현식 질문이 있습니다.

0

140

2

섹션 1. 6번째 강의 질문입니다.

1

247

1

선생님 Objcet 질문 있습니다.

0

299

2

forEach문을 활용한 코딩시간 풀이

0

617

1

sort 코딩 시간 풀이

0

292

1

코딩 시간 풀이 올려봅니다.

0

230

1

인덱스 코딩시간 문제풀이

0

383

1

for문 코딩 시간 답제출

0

308

1

3:39 sort에 들어가서 one,two 파라미터질문입니다.

0

194

0

퀴즈 질문 및 정답

0

357

1

오브젝트

0

284

1

인스턴스 목적

1

240

1

[코딩시간 01] 3항 연산자로 작성했을 때, 각 값..?

0

269

1

Undefined === Null; // true???

0

194

1

indexOf의 파라미터에 음수를 작성 했을때에 대한 질문입니다.

0

1031

5

length 값 변환 논리에 대한 질문입니다.

0

211

1

상수 변수 선언에 대해

0

236

1

코딩 시간 (for문) 풀이

0

256

1

Object vs object

1

502

1

코딩 시간 풀이입니다.

0

199

1

log(add(1, 2, 3, 4));

0

183

1

코딩시간 답 제출

0

200

1