`function Person(){}`、`var person = Person()`、`var person = new Person()` 有什么区别?
Difference between: `function Person(){}`, `var person = Person()`, and `var person = new Person()`?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: javascript-fundamentals
标签: Constructor, new, this
参考答案摘要
答案 `function Person(){}` 定义了一个函数(通常用作构造函数)。 `Person()` 是普通函数调用:this 取决于调用方式(严格模式为 undefined),返回值取决于函数显式 return;如果没有 return,则返回 undefined。 `new Person()` 进行构造调用:创建新对象,把 this 绑定到新对象,设置原型链到 Person.protot...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。