有没有办法在所有类/对象函数上设置事件,监听器将在其中接收函数名称和参数?
我希望能够在调用属于该常规对象或类的函数时随时运行某些功能。
这样做的目的(我可能会走一条复杂的道路)是为函数分配对象级缓存。假设我有一个调用 Node.js Sequelize 方法的服务函数,例如,我想将其缓存 x 分钟。因此,上面的监听器将使用 ttl 写入 Redis,并在调用该函数时检查 Redis。
我使用 Scala 完成了此操作,没有样板代码,使用注释来表示该无聊集的任何方法和宏的 ttl,并访问 redis。不知道如何使用 Javascript/nodejs 来实现这一点。
如果这是一个不合适的堆栈溢出问题,请提前抱歉,但任何一般性指导都会有所帮助。
最佳答案
使用 JavaScript 执行此操作的现代方法是通过代理对象。以下是文档中对它们的描述:
The Proxy object is used to define custom behavior for fundamental operations (e.g. property lookup, assignment, enumeration, function invocation, etc).
这里:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy
关于javascript - 有没有办法在所有类/对象函数上设置事件,监听器将在其中接收函数名称和参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53384831/