我如何还原覆盖的本机函数

问题描述 投票:0回答:1

只是一个实验,说我决定阻止在节点应用程序中运行eval(),然后我添加了类似的内容:

global['eval'] = function(args){ this.console.log(`eval attempted: ${args}`); }

是否有任何方法可以在不重新启动应用程序的情况下恢复评估?

javascript node.js eval
1个回答
3
投票

如果保存对函数的引用,是。

const originalEval = global.eval;
global.eval = function(args){ this.console.log(`eval attempted: ${args}`);}

function restore() {
  global.eval = originalEval;
}
© www.soinside.com 2019 - 2024. All rights reserved.