参考答案:面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
解析:
补充
补充:OOP(Object-Oriented Programming,面向对象编程)核心思想是"以对象为中心"组织代码,把数据和操作数据的行为封装到对象里,通过对象之间的协作完成业务。四大特性:
- 封装:将数据和内部实现隐藏,对外只暴露必要接口(如 getter / setter)。
- 继承:子类复用父类属性与方法(JS 通过原型链实现)。
- 多态:同一接口在不同对象上有不同实现(JS 中通过鸭子类型体现:关注行为而非类型)。
- 抽象:抽取共同特征形成类 / 接口,忽略非本质细节。
JS 不是纯 OOP 语言:基于原型而非类(class 只是语法糖),但可以写出 OOP 风格的代码(React/Vue 组件即典型 OOP 思路)。
class Animal {
constructor(name) { this.name = name }
speak() { console.log(name + ' makes a sound') }
}
class Dog extends Animal {
speak() { console.log(name + ' barks') }
}
new Dog('旺财').speak() // 旺财 barks
来源整理自:vue3js.cn 面试官系列



