1.1 : x
에 직접 액세스하면 linkingObject
에 액세스 할 수 없지만 linkingObject.prototype
에 액세스하는 이유는 무엇입니까?프로토 타입 액세스 및 동작
1.2 : x
에 대해 linkingObject
을 검색하면 엔진이 기본적으로 설정되어 있지 않아야 x
이라는 프로토 타입을 검색 할 수 있습니까? .prototype
을 명시 적으로 명시해야하는 이유는 무엇입니까?
1.3 : 이것이 이상하다는 것을 더 자세히 설명하기 위해 baseObject
은 linkingObject
의 프로토 타입이며 x
속성이 포함되어 있음을 알 수 있습니다.
const baseObject = function() {};
baseObject.prototype.x = 5;
const linkingObject = Object.create(baseObject);
console.log(linkingObject.x); // 1.1: undefined
console.log(linkingObject.prototype.x); // 1.2: 5
console.log(linkingObject.prototype); // 1.3: baseObject { x:5 }
함수 개체를 상속하고 있습니다. 그러지 마라, 그건 이상한 일이야. 당신은''const baseObject = {x : 5}'와'.prototype' 속성 ('new'와 함께 사용되는 생성자에만 관련이 있습니다)을 원합니다. – Bergi