当前位置:首页 > Web开发 > 正文

name) {this.age = age;this.name = name;}function member(age

2024-03-31 Web开发

//原型工厂模式 function extend(target, origin) { target.prototype = Object.create(origin.prototype);//此要领创建了一个东西,,改削父类原型与子类原型彼此独立 Object.defineProperty(target.prototype, "constructor", { value: target, enumerable: false }) }


//东西工厂模式 function User(age, name) { this.age = age; this.name = name; } function member(age, name) { let instance = Object.create(User.prototype); User.call(instance, age, name); instance.pri = function () { console.log([age, name]); } return instance; } var queen = member(11, ‘Tom‘);

//通过mixin实现多担任 let admin = { prtadmin() { return "admin"; } } let user = { __proto__: admin, // mixin的内部担任 prtuser() { console.log(super.prtadmin() + "user"); //super关键字 = this.__proto__ } }; // 向函数原型内添加要领的三种方法 // Fun.prototype.user = user.prtuser; // Fun.prototype.admin = admin.prtadmin; 该要领可以将添加的要领进行重定名 // Object.assign(Fun.prototype, admin, user); 使用Object.assign要领会转变原东西 // Fun.prototype = Object.assign(Fun.prototype, admin, user); function Fun() { } let fun = new Fun();

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31922.html