原理:
在原型式的继承上在封装一层、用于增强对象
代码理解
function object(o) {function F() { }F.prototype = oreturn new F()}function createUser(original) {var clone = object(original);clone.getName = function () {console.log(this.name)};return clone;}let user = {name: "z",age: 18,hobby: ['找小姐姐', '找富婆']}let user1 = createUser(user);
缺点
- 某个实例去改变原型会导致所有实例的原型都发送改变
- 无法传递参数
