2013-08-13 7 views
8

再生中! (2.2-M2)私は次のようにJsValue持っている:私はちょうどこのJsValue内の要素の数をしたいJsValueのJsObjectsの数はどのように数えますか?

val people: JsValue = [{"name":"Alice","subdomain":"alice","color":"orange"},{"name":"Jorge","subdomain":"jorge","color":"blue"},{"name":"Bob","subdomain":"robert","color":"green"}...] 

を。私は

(people \\ "name").size 

を通じて、clunkilyそれを得ることができますが、

val places: JsValue = [{"country":"UK", "country":"ES", ...] 

または

のように、このサイズの計算は異なる内容でJsValuesを受け取るメソッド内で座っている、と nameが常に存在することはありません
val things: JsValue = [{"widget":"foo", "price":"1", "widget":"bar" ... ] 

私はどのように私はこれらのJsValuesの要素数を取得するか、私の髪を引っ張っていますか?

答えて

22

あなたは、配列内のオブジェクトの数をカウントしたい場合は、JsArrayにマップすることができます。

people.as[JsArray].value.sizeまたはpeople.asOpt[JsArray].map(_.value.size)です。

+0

ありがとうございました – JennyDanger

関連する問題