0

以下の配列 JSON オブジェクトを見つけてください。

points:[{x:1, YValues:[34,45,56]}, {x:5, YValues:[20,12,30]}, {x:8, YValues:[12,13]}]

Xの最大値と の最大値をYValues別々に求めたいです。

for ループが最大値を見つけるとは思わない。JSONオブジェクトからのX最大値と最大値を簡単な方法で見つけることを期待しています。YValuespoints

Math.maxまたは任意のカスタム関数を使用することは可能ですか?

ありがとう、シヴァ

4

2 に答える 2

1

javascript 1.8 Array reducemethod を使ってソウルションを作りました。最新のブラウザでのみ動作することに注意してください

var max = yourObj.points.reduce( function ( a, b ){
    a.x = Math.max.apply( 0, [a.x,b.x] ) ;
    a.y = Math.max.apply( 0, [].concat( [ a.y ], b.YValues ) )
    return a;
}, { x :0, y :0 } );

max変数には最大の x と y が含まれます

console.log( max.x );
console.log( max.y );
于 2013-06-08T07:26:04.207 に答える