gpt4 book ai didi

javascript - javascript Reflect.construct newTarget 在做什么

转载 作者:行者123 更新时间:2023-12-04 16:01:30 24 4
gpt4 key购买 nike

<分区>

当我阅读时this ,它告诉我“给定目标的一个新实例,通过调用它(或 newTarget,如果存在)作为具有给定参数的构造函数来创建。”但实际上,根本不是这样。这是一个例子:

function Parent() {
this.parent = "Parent"
console.log("This is parent.")
}
function Child() {
this.child = "Child"
console.log("This is child.")
}
var result = Reflect.construct(Parent, [], Child);
console.log(result)

输出看起来像这样:

enter image description here

这对我来说很奇怪,因为根据文档,当我们将 Child 作为新的目标参数放入 Reflect.construct 时,它应该使用 Child 的构造函数来创建一个新实例,但日志显示“This is parent. “打印并保存 Parent 的属性,同时构造函数是 Child() 的。这怎么可能?有人可以解释一下幕后发生的事情吗?这让我发疯,我真的很想知道 javascript 是如何做到这一点的。非常感谢你们。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com