Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在此代码求值期间在特定范围内隐藏代码参数?_Javascript_Scope_Eval - Fatal编程技术网

Javascript 如何在此代码求值期间在特定范围内隐藏代码参数?

Javascript 如何在此代码求值期间在特定范围内隐藏代码参数?,javascript,scope,eval,Javascript,Scope,Eval,在保持全局对象(例如窗口和文档)和arg“范围”的可用性的同时,是否可以使arg“代码”不可访问/不可见? 第一个和第二个日志应显示信息,而第三个日志应显示异常 var-foo; 功能注册(范围、代码){ eval(代码); } 注册( {test:“test”}, 'foo=function(){console.log(“窗口:”,窗口);console.log(“范围:”,范围);console.log(“代码:”,代码);} ); foo(); 您可以在eval中取消设置该属性: eval

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

var-foo;
功能注册(范围、代码){
eval(代码);
}
注册(
{test:“test”},
'foo=function(){console.log(“窗口:”,窗口);console.log(“范围:”,范围);console.log(“代码:”,代码);}
);
foo();

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

eval('code = undefined; ' + code);

第一个建议是,不要使用
eval
,也不要将文本转换为代码。如果您可以通过
window.code
访问它,那么只调用
code
将调用相同的
window.code
。你能解释一下你想做什么吗?@Justinas
eval
在当前范围内运行代码,这就是为什么它可以看到
code
@Justinas我想在浏览器中运行用户代码的小环境。我想显示一些参数和属性,但隐藏代码文本