0

これらのプロパティ キーを持つオブジェクトがあります。

instance['banana'];
instance['cl'];
instance['cl2'];
instance['minion'];
instance['cl3'];

で始まるプロパティ キーの中で最大の数を特定したいと思います'cl'。したがって、フィルタリングされた「cl」のうち、値ではなくキーに最大の数値を持つ「cl」が必要です。(この例では、これは「cl3」になります)。

instanceこれまでのところ、プロパティ キーにアクセスできますObject.keys(instance)(最新のブラウザーでのみ機能することは理解していますが、問題ありません)。ここで、すべて'cl'の s を除外して、どの数値が最も高いかを調べる必要があります。

Math.maxは最高の数を見つけるために見るべきだと思います。

正しい方向への微調整はありますか? ありがとう :)

4

1 に答える 1

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"
于 2013-06-26T09:47:00.303 に答える