当另一个变更时,Javascript会更改我的变量

时间:2016-01-14 14:05:41

标签: javascript

一旦第一个变量被定义,我需要的是将全局变量的值保存到我的全局变量。

我需要的是:

var old_other_global; 
var my_global
if(typeof other_global === "object"){
   old_other_global = other_global;
   my_global = (other_global = "undefined");
}

var d=document,g=d.createElement('script'),s=d.getElementsByTagName('script')[0]; 
g.type='text/javascript';
g.defer=true;
g.async=true;
g.src=u+'some_file.js';
s.parentNode.insertBefore(g,s);

//Set back old value to "other_global"
if(typeof old_other_global === "object"){
    other_global = old_other_global;
}

变量“other_global”将在js文件“some_file.js”中更改,我将在下一步加载:

if(typeof other_global != "object")
{  
   //define other_global
}

在“some_file.js”更改“other_global”变量之后立即执行我需要将其保存在我的全局变量“my_global”中。

这可能吗?我无权访问“some_file.js”

修改

我这样做是因为版本控制。在加载“some_file.js”之前,可以将变量“other_global”设置为一个版本。所以我需要在加载之前将“other_global”保存到另一个变量并将其设置为undefined。然后在加载“some_file.js”并更改“other_global”后,我需要将其保存在我的全局变量中,然后使用旧值重置它(之前)加载“some_file.js”。我编辑了上面的代码。

我需要在“some_file.js”中重新定义“other_global”之后立即更改变量我不能等到文件以加载结束(如script.onload()),因为我需要触发一个函数调用在“some_file.js”的末尾,在那时我需要“my_global”来设置值。

0 个答案:

没有答案