javascript - 我如何返回 eval(code) 并使用 JavaScript 取回对象?

标签 javascript xmlhttprequest eval

我有这段代码。我想要它做的是加载一个 .js 文件然后运行它。 wWen 它运行时我希望它返回一个参数或更好的对象。

这是我页面中的代码

var runCode = function(){
    var xhr=new XMLHttpRequest();
    xhr.open('GET','io.js',false);
    xhr.send();
    return eval(xhr.responseText);
};

这是 is.js

var IO = new function(){
    this.run = true;
    return 'io';
};
return IO

但是当我运行它时,我在控制台中收到“Uncaught SyntaxError: Illegal return statement”。

最佳答案

我发现的另一个解决方案是将要被eval 的字符串封装在一个函数中,这非常简单。

return eval("(function() {" + xhr.responseText + "})();");

关于javascript - 我如何返回 eval(code) 并使用 JavaScript 取回对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3896577/

相关文章:

javascript - 在跨域服务器的 GET 请求中包含 cookie

Javascript 是否可以在 Http 请求之前检查文件是否存在?

r - 如何避免 eval 和 parse?

Javascript:返回在 eval 中创建的值

javascript - 在 Firefox 扩展中使用 indexedDB

javascript - 当我包含推荐的安全覆盖时,为什么脚本拒绝在 Google Analytics Chrome 扩展程序中加载?

javascript - 如何在 Javascript 中添加水平线

javascript - 如何根据用户选择的选项使用 JQuery 提交表单

vba - Excel VBA 中的 XmlHttp Post 不更新网站表单

javascript - 引用存储在 CSS Content 属性中的 JS 代码