您的位置:首页 > 其它

eval

2016-01-27 14:12 190 查看
eval 运行代码时会生成作用域

可计算某个字符串,并执行其中的的 JavaScript 代码。
var a = "test" , b = "a";
eval(b);
会输出test

当运行eval(src)的时候,是在调用eval方法的scope里面执行src代码,那么如果需要src运行到全局scope应该:

var globalEval = function globalEval(src) {
if (window.execScript) {
window.execScript(src); //ie才有的方法
return;
}
var fn = function() { //Firefox曾经一个bug,alert(this)不是返回window object
window.eval.call(window,src);
};
fn();
};

https://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: