ECMAScript 6 では、取り消し可能として作成できるプロキシ オブジェクトが導入されています。
プロキシが取り消されたかどうかを検出するにはどうすればよいですか?
ECMAScript 6 では、取り消し可能として作成できるプロキシ オブジェクトが導入されています。
プロキシが取り消されたかどうかを検出するにはどうすればよいですか?
Proxy
コンストラクターは、ターゲットとハンドラーがオブジェクトであり、取り消されたプロキシでない場合にのみそれらを受け入れます。ProxyCreateから、
これにより、値が取り消されたプロキシであるかどうかを確認できます。オブジェクトであることを確認するだけでProxy
スローになります。
このようなものが動作するはずです:
function isRevokedProxy(value) {
try {
new Proxy(value, value);
return false;
} catch(err) {
return Object(value) === value;
}
}