以下为ChatGPT自动生成的解答,正确与否请自行判断。
BFE.devAI解答 - JavaScript 代码题
94. 实现`Object.create`
function myObjectCreate(proto) {
if (typeof proto !== 'object' || proto === null) {
throw new Error('Parameter must be an object');
}
function F() {}
F.prototype = proto;
return new F();
}
使用一个空函数 F
作为中间函数,让其 prototype
属性指向 proto
,然后通过 new F()
来创建一个新对象,并继承 proto
的属性和方法。同时还需判断传入的参数是否为对象,避免错误。