如何在特定范围内的代码评估期间隐藏代码参数?

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

是否可以使arg“代码”不可访问/不可见,同时保持全局对象(例如,窗口和文档)和arg“作用域”的可用性?第一个和第二个日志应显示信息,而第三个日志应显示异常。

var foo;

function reg(scope, code) {
    eval(code);
}

reg(
    {test: "test"},
    'foo = function(){console.log("Window:", window); console.log("Scope:", scope); console.log("Code:", code);}'
);
foo();
javascript scope eval
1个回答
0
投票

您可以在eval中取消设置该属性:

eval('code = undefined; ' + code);
© www.soinside.com 2019 - 2024. All rights reserved.