我正在尝试遍历所有JavaScript变量以查找与某个正则表达式匹配的变量。该函数在IE浏览器的每个浏览器中都能正常工作,看起来for循环不读取每个全局变量,即使它在那里。我可以使用window.variable直接访问变量,但它不会出现在循环中。
var w = window;
var meta = '';
var reg = /meta_(.+)/;
var reg_r;
for (var k in w){
if (reg_r = reg.exec(k)){
if (typeof(w[k])!="undefined" && typeof(reg_r[1])!="undefined"){
meta += reg_r[1] + '=' + escape(w[k]) + '&';
}
}
}