Proxyのapplyで関数の実行に介入することができる。 constructというのもありnewに介入ができる。
function concatText(left, right) {
return `${left} ${right}`;
}
const proxyConcatText = new Proxy(concatText, {
apply(target, thisArg, argumentsList) {
console.log("args:", argumentsList)
const r = Reflect.apply(...arguments)
console.log(`return:`, r)
return r;
}
})