1.我自己的實現
// 我自己的實現 Object.create()
Object.create = function (proto, properties = {}) {
let newObj = {};
newObj.__proto__ = proto;
Object.defineProperties(newObj, properties);
return newObj;
}
2.其他人的實現方式
function create(proto) {
function F() {};
F.prototype = proto; // 將原型掛在構造函數的prototype上
F.prototype.constructor = F;
return new F(); // 返回新對象
}