-1

我有一个 javascript 变量列表,例如 var_111、var_222、var_132、var_122bb ...

下划线后面的字符串是来自远程服务器的响应,所以我不能事先指定它们。

我想运行一个循环遍历所有 var_* 变量。例如console.log 中的所有变量。

我想它可以用正则表达式来完成,但我真的还没学过。希望有人能帮忙!

4

1 回答 1

1
str.match(/var_\d+/g).forEach(function(v)
{
    console.log(v); // v here is a variable such as var_111
});

根据下面的说明,假设实际发生的是服务器正在设置一堆您无法控制其名称的全局变量,您想要的是:

for (var k in window)
   if (window.hasOwnProperty(k) && k.match(/^var_\d+$/))
      console.log(k)

这将遍历所有全局变量并将它们与正则表达式进行比较以获取 var_### 类型的变量,并为您打印出来。您可以使用 获取值window[k]。这是有效的,因为所有全局变量实际上都是window对象的属性。

于 2013-01-31T17:38:29.007 回答