我有一个带有这些属性键的对象:
instance['banana'];
instance['cl'];
instance['cl2'];
instance['minion'];
instance['cl3'];
我想确定以'cl'
开头的属性键中的最高数字是多少。对于过滤过的',我想要' cl'密钥中的数字最多,而不是其价值。 (在这个例子中,这将是' cl3')。
到目前为止,我可以使用instance
访问Object.keys(instance)
属性键(我了解其中仅适用于现代浏览器,但这没关系)。现在我需要过滤掉所有'cl'
,然后找出哪个数字最高。
我想我应该看Math.max
找出最高的数字。
任何朝着正确方向的推动,都会受到青睐?谢谢:))
答案 0 :(得分:1)
var cls = Object.keys(instance).map(function(key){
return /^cl/.test(key) && +key.replace(/\D+/,'');
});
//^= [false,"",2,false,3] == [0,0,2,0,3]
var maxCl = 'cl'+ Math.max.apply(0, cls); //= "cl3"