如何使用名称的一部分获取javascript对象属性

时间:2015-04-28 12:02:10

标签: javascript

我在window对象中有属性yaCounter27352058。 我可以使用括号表示法轻松获得它

window["yaCounter27352058"]

问题是我不知道对象id,所以一般来说我想得到像这样的所有对象

window["yaCounter*"]

2 个答案:

答案 0 :(得分:4)

您可以根据Object.keys进行查询:

values.forEach(function(key) {
   console.log(key, window[key]); 
});

然后你可以迭代:

'NSUnknownKeyException', reason: '[<FestiPay.MasterViewController 0x10070ae20> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key cardSection.'

答案 1 :(得分:0)

嗯,其实你做不到。 但你可以做点别的事。

您可以尝试使用

列出所有属性

var properties = Object.keys(window)

然后使用正则表达式,您将选择以yaCounter开头的属性:

var reg = new RegExp("^yaCounter.*");
var goodProp = [];
properties.forEach(function(prop) {
    if (reg.exec(prop) != null)
        goodProp.push(prop);
}

他们将这些用于:

goodProp.forEach(function(val) {
    window[val];
}));