使用JSONiq 到JSONiq的 JavaScript实现,假设我有一个数组
let $a := [1,2,3]
我想将元素作为序列获取,但所有这些都返回数组本身 -
return $a()
return $a[]
return members($a)
提取数组成员的正确方法是什么?
我的最终目标是将数组中的对象转换为字符串,就像这样 -
let $updates := [
{"address": "%Q0.1", "keys": ["OUT2", "output.2"], "value": 0},
{"address": "%Q0.7", "keys": ["OUT8", "output.8"], "value": 1}
]
for $update in $updates()
return "<timestamp>|address|" || $update.address
为了将 JSON 对象数组转换为一组字符串,例如<timestamp>|address|%Q0.7
,等
编辑:使用Zorba的 $a() 语法似乎可以正常工作 - 这是节点 jsoniq 解析器的问题吗?
例如
jsoniq version "1.0";
let $updates := [
{"address": "%Q0.1", "keys": ["OUT2", "output.2"], "value": 0},
{"address": "%Q0.7", "keys": ["OUT8", "output.8"], "value": 1}
]
for $update in $updates()
return current-dateTime() || "|address|" || $update.address
返回
2021-02-19T23:10:13.434273Z|地址|%Q0.1 2021-02-19T23:10:13.434273Z|地址|%Q0.7