首页 > 解决方案 > 如何获取 JavaScript 变量?

问题描述

从包含(或引用)我的 JavaScript 的页面,我向外部网站发出 AJAX XHR 请求。

外部网站在我们的 GET 请求中返回一个 JavaScript 文件,如下所示:

var __xxx = {
    // ....
};

如何__xxx在我的 JavaScript 中获取变量的值?

目前,我发明的唯一方法是var __xxx使用正则表达式删除并使用 JSON 解析器解析剩余部分。有没有更好的办法?

如有必要,外部网站可能被认为是受信任的,但我不希望信任来自它的数据(使用一些安全的解析器,如 JSON)。

标签: javascriptvar

解决方案


我相信你最好的选择是要么做你目前正在做的事情(解析字符串 Javascript 和JSON.parse它),要么eval在传入的 Javascript 字符串上使用该方法。

我个人建议解析字符串,但这取决于您从该端点返回的 Javascript。Eval 几乎可以肯定在任何一种情况下都可以工作,但可能很危险


推荐阅读