前言
参与过面试的小伙伴都应该知道,调用new方法具体做了什么以及手动实现一个new方法是一个高频面试题,接下来我们就手动实现一个简单的new方法。
一、调用new方法构造函数做了什么?
1、创建一个新对象
2、将构造函数中的this指向新对象
3、执行构造函数
4、返回新对象
二、实现方法
// 构造函数
function Construct(name,age) {
this.name = name
this.age = age
}
// 实现方法
function myNew(Fn,...rest){
let newObj = {}
newObj.__proto__ = Fn.prototype
Fn.apply(newObj,rest)
return newObj
}
const obj = new Construct('jack',21)
const newObj = myNew(Construct,'jack',21)
console.log(obj)
console.log(newObj)
结果:

本文解析了new方法在构造函数中的作用,包括创建新对象、设置this指针和执行构造函数。通过实例演示如何手动实现一个简单的new方法,适合面试准备。

被折叠的 条评论
为什么被折叠?



