[javascript] 객체 할당과 프로토타입 상속.

자바스크립트는 프로토타입 기반 언어이기 때문에 객체 간 상속을 위해 프로토타입을 사용합니다.

객체 할당

자바스크립트에서 객체는 참조에 의해 할당됩니다. 이는 객체를 변수에 할당하면, 실제로는 객체 자체가 복사되는 것이 아니라 참조만 복사된다는 것을 의미합니다.

예를 들어:

let obj1 = { key: 'value' };
let obj2 = obj1; // obj1을 obj2에 할당

위 코드에서 obj2obj1과 같은 객체를 참조하고 있으며, 따라서 obj1 또는 obj2를 변경하면 두 변수가 동일한 객체를 참조하고 있기 때문에 변경 사항이 서로에 반영됩니다.

프로토타입 상속

자바스크립트의 모든 객체는 다른 객체를 참조하는 프로토타입을 가지고 있습니다. 이는 부모 객체의 속성과 메소드를 자식 객체가 상속받을 수 있게 해줍니다.

프로토타입을 사용한 상속은 Object.create() 메서드나 class 키워드를 사용하여 수행됩니다. 예를 들어:

let parent = { key: 'value' }; // 부모 객체
let child = Object.create(parent); // 자식 객체를 부모 객체로부터 생성
console.log(child.key); // 'value'를 출력

위 코드에서 child 객체는 parent 객체를 해당 프로토타입으로 사용하고 있기 때문에 key 속성을 상속받아 사용할 수 있습니다.

프로토타입을 사용한 상속은 객체 지향 프로그래밍에서 중요한 개념이며, 자바스크립트에서 유용하게 활용됩니다.

결론

자바스크립트에서 객체 할당과 프로토타입 상속은 중요한 부분이며, 이러한 개념을 이해하고 활용하는 것은 프로그래밍을 할 때 매우 유용합니다.

참조: MDN web docs