keySet

keySet<K, V>(obj: { (K)?: V }): Array<K>

オブジェクトからのキー名の配列を返します。

この関数は​非推奨​です。代わりに ​dw::Core::keysOf​ を使用してください。

パラメーター

名前 説明

object

評価するオブジェクト。

次の例では、入力オブジェクトからのキーを返します。

ソース

%dw 2.0
import * from dw::core::Objects
output application/json
---
{ "keySet" : keySet({ "a" : true, "b" : 1}) }

出力

{ "keySet" : ["a","b"] }

次の例は、​keySet​ と ​nameSet​ の違いを示しています。 keySet​ は XML 入力からの属性 (​name​ と ​lastName​) と名前空間 (​xmlns​) を保持していますが、​nameSet​ はそれらを保持しないため、​null​ を返しています。

ソース

%dw 2.0
import * from dw::core::Objects
var myVar = read('<users xmlns="http://test.com">
                     <user name="Mariano" lastName="Achaval"/>
                     <user name="Stacey" lastName="Duke"/>
                  </users>', 'application/xml')
output application/json
---
{ keySetExample: flatten([keySet(myVar.users) map $.#,
                          keySet(myVar.users) map $.@])
}
++
{ nameSet: flatten([nameSet(myVar.users) map $.#,
                    nameSet(myVar.users) map $.@])
}

出力

{
  "keySet": [
    "http://test.com",
    "http://test.com",
    {
      "name": "Mariano",
      "lastName": "Achaval"
    },
    {
      "name": "Stacey",
      "lastName": "Duke"
    }
  ],
  "nameSet": [
    null,
    null,
    null,
    null
  ]
}