前端/移动开发面试题更新 2026-08-05

在 JavaScript 里,可以用哪些不同的方法来创建对象?

前端/移动开发技术原理JavaScript

考察说明

考查对 JavaScript 对象创建多种方式的掌握程度及各自特点。

回答思路

  1. 【回答框架 1】对象字面量是最直接的方式,通过花括号直接定义属性和方法,适合创建单个对象,代码简洁直观。
  2. 【回答框架 2】构造函数方式通过 function 定义构造器,使用 new 关键字实例化,可创建多个相似对象,但需注意原型共享和 this 指向。
  3. 【回答框架 3】Object.create 方法基于指定原型创建新对象,适合实现继承或创建原型链上的对象,可精确控制原型关系。
  4. 【回答框架 4】ES6 的 class 语法是构造函数的语法糖,提供更清晰的面向对象写法,支持继承和静态方法,底层仍是原型链机制。
  5. 【回答框架 5】工厂函数通过普通函数返回新对象,避免 new 关键字,可灵活封装创建逻辑,但无法区分对象类型,且每个实例都是独立对象。
  6. 【关键点 1】对象创建方式包括字面量、构造函数、Object.create、class 和工厂函数。
  7. 【关键点 2】构造函数和 class 都需要 new 关键字,共享原型上的方法。
  8. 【关键点 3】Object.create 允许指定原型,适合原型式继承。
  9. 【关键点 4】工厂函数可替代构造函数,但实例不共享原型。
  10. 【关键点 5】ES6 class 本质是构造函数的语法糖,底层基于原型链。
  11. 【易错点 1】混淆构造函数和普通函数,忘记 new 会导致 this 指向全局对象。
  12. 【易错点 2】Object.create(null) 创建的对象没有原型,无法调用 Object 原型方法。
  13. 【易错点 3】过度使用工厂函数可能造成内存浪费,因为每个实例都复制方法。