企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
## 寄生式继承 - 和原型继承比较相近的一种继承方法 适用场景:原有一个对象,在不需要构造函数的情况下,想在它的基础上再创建新对象 ### 存在的问题: 1. 引用数据在子类中共享 2. 函数无法重用 ### 核心思想: * 通过调用函数创建一个新对象 * 增强这个对象 * 返回这个对象 ``` function createAnother(origin) { let clone = Object(origin) // 创建新对象 clone.sayHi = function() { // 给对象添加方法 console.log('hi') } return clone // 返回这个对象 } let persion = { name: 'coco', friends: ['tom', 'jerry'] } let persion1 = createAnother(persion) persion1.sayHi() // hi persion1.friends.push('lala') // ["tom","jerry","lala"] let persion2 = createAnother(persion) persion2.sayHi() // hi persion2.friends // ["tom","jerry","lala"] ```