gpt4 book ai didi

javascript - Reflect.set 未按预期工作

转载 作者:搜寻专家 更新时间:2023-11-01 04:28:55 24 4
gpt4 key购买 nike

我似乎不太可能发现某种明显的跨浏览器错误。但是根据文档Reflect.set应该使用第 4 个参数作为 thisArg(例如,如果 set 变量是 setter)。第一个参数是要在其上设置值的对象,但每当我提供任何对象作为第四个参数时,都会在该对象而不是目标对象上设置值。

var target = new Object;
var thisArg = new Object;

Reflect.set(target, 'variable', 52, thisArg);

target.variable == undefined
thisArg.variable == 52

有什么解释吗?

最佳答案

The first argument is the object the value is to be set on

不完全是。第一个参数是调用其 setter 的对象(包括对象原型(prototype)链上的 setter )。

whenever I supply any object as the 4th argument, the value gets set on that instead of the target object.

是的。因为属性总是 在接收器上设置。只是参数是可选的,因为它通常与目标相同,因此在未提供时默认为第一个参数。

关于javascript - Reflect.set 未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47992070/

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