Object 외에 다른 타입들의 prototype
316
작성한 질문수 1
안녕하세요, 캡틴판교님. 수강 중 궁금증이 생겨 질문 남깁니다. 제 생각이 맞는지 한번 확인해주시면 감사하겠습니다.
exam.~ 과 같은 형태는 객체의 형태와 같다고 생각합니다. 즉 우리가 흔히 쓰는 str.split(',')라던가 num.toString() 등이 모두 String 객체, Number 객체이지 않나 생각합니다.
만약 var str = "a,b"; 라고 한다면 사실은
class String(text) {
constructor(text) {
this.type = 'string';
this.__proto__ = ~~~
}
}
와 같은 형태였으며 "~"이라면 자동으로 String 객체를 리턴하는,,, 그런 느낌이지 않을까 생각해봅니다.
추가로 질문드리자면 위와 같은 형태가 맞다면 사실 toStirng이나 split 같은 내장 함수들은 String이나 Number 객체가 아닌 __proto__ 객체 안에 있다고 보는 것이 맞을 텐데 어떻게 str.__proto__.split(',')이 아닌 str.split(',') 만으로도 내장 함수를 실행 가능한지 궁금합니다.
답변 1
0
안녕하세요, 좋은 질문이네요. 질문하신 내용은 자바스크립트의 prototype chaining 관련 질문이네요. 자바스크립트는 기본적으로 속성과 메서드를 사용할 때 프로토타입 체인을 거슬러 올라가 Object에 도달합니다. 모든 원시 데이터 타입은 Object에서 파생되었어요. 그래서 str.split()을 해도 str.__proto__의 안에 있는 split() API를 참조합니다 :)
TSLint
0
67
1
vscode eslint server 오류
0
82
1
안녕하세요. 기본타입- 튜플, 객체, 진위값 부분의 영상의 화면이 나오질 않습니다.
0
77
1
live server 설치 오류
1
377
2
강의 교안 pdf 는 따로 제공하지않나요?
0
287
2
npm i 설치 이유 문의
1
409
3
index.ts Delete `␍`eslintprettier/prettier 오류(빨간줄) 해결
2
291
3
vue 에서 jquery 사용 문제
1
697
2
TSLint 확장 프로그램은 현재 지원하지 않는다고 합니다.
1
501
2
강의 내용처럼 노란 밑줄이 작동하지 않아서 유사 질문들을 실행해보았는데요
1
544
1
section 3-1 JSdoc 타입이 추론되지 않아서 다음과 같이 수정했는데 이거 맞나요?
1
454
2
함수에 리턴 안됐다고 노란밑줄이 쳐져야하는데 없습니다
2
458
1
파일이 다른데 식별자가 중복되었다고 뜹니다.
1
445
2
빨간줄 에러 질문드립니다
1
489
2
마우스 갖다대면 리턴값 설명 나오는 거 질문드려요
1
358
2
js에서 @ts-check 적어도 체크하지 못하는 문제입니다
2
396
2
index.html에서 타입스크립트 콘솔 찍는 법 질문드립니다
1
567
2
섹션 1-3 추론 질문드립니다
1
356
2
왜 api쪽에는 왜 에러가 안나는지 궁금합니다.
1
326
2
const item1을 선언했을 때 타입을 선언해줘도 괜찮을까요?
1
391
1
전화번호부 타입선언
1
267
2
타입을 전역으로 분리
1
594
2
객체 선언 시 구분자는 쉼표, 세미콜론 모두 사용가능한건가요?
1
460
1
Git 관련 질문이 있습니다
1
672
2





