STUDY/javascript
[면접 질문] function Person(){}, var person = Person(), 그리고 var person = new Person()의 차이점?
3급우사기
2024. 9. 25. 14:12
function Person(name) {
this.name = name
}
var person = Person('John')
console.log(person) // undefined
console.log(person.name) // Uncaught TypeError: Cannot read property 'name' of undefined
var person = new Person('John')
console.log(person) // Person { name: "John" }
console.log(person.name) // "John"
- function Person(){}: 일반적인 함수 선언
- var person = Person(): 생성자가 아니라 Person을 함수로 호출, undefined가 반환
- var person = new Person(): Person.prototype을 상속받은 new 연산자를 사용하여 Person 객체의 인스턴스를 생성
참고
JavaScript 질문 | The Official Front End Interview Handbook 2024
프론트엔드 면접 질문 - JS 질문에 대한 해설입니다. Pull Request를 통한 제안, 수정 요청 환영합니다.
www.frontendinterviewhandbook.com