如何从 javascript 代理中获取数组
how to get an array out of a javascript proxy
您好,我想知道是否有人知道如何从 JavaScript 中的代理目标值中获取数组。我有这样的东西:
Proxy :
[[target]] : Array // the array I need to extract
[[handler]] : Object
[[IsRevoked]] : false
如果您只有对代理的引用,则您无法(默认情况下)获得代理的目标。一个特定的代理可以提供一种方式(可能通过它的一个陷阱处理程序),但默认情况下有 none。
另外,如果处理程序相应地映射所有内容,您可能会通过传播获得目标的副本。但是你不能得到原来的[[target]]
对象。
const proxy = new Proxy([1, 2, 3], {
get(target, prop, receiver) {
return target[prop];
}
});
console.log([...proxy]);
您好,我想知道是否有人知道如何从 JavaScript 中的代理目标值中获取数组。我有这样的东西:
Proxy : [[target]] : Array // the array I need to extract [[handler]] : Object [[IsRevoked]] : false
如果您只有对代理的引用,则您无法(默认情况下)获得代理的目标。一个特定的代理可以提供一种方式(可能通过它的一个陷阱处理程序),但默认情况下有 none。
另外,如果处理程序相应地映射所有内容,您可能会通过传播获得目标的副本。但是你不能得到原来的[[target]]
对象。
const proxy = new Proxy([1, 2, 3], {
get(target, prop, receiver) {
return target[prop];
}
});
console.log([...proxy]);