gpt4 book ai didi

javascript - MarkLogic 使用 javascript 获取 Json 文档的所有嵌套字段名称

转载 作者:行者123 更新时间:2023-11-30 14:47:07 25 4
gpt4 key购买 nike

我需要 javascript 中的递归函数,它可以返回我在 MarkLogic 中存储的 json 文档的所有字段名(键名)。 JSON 文档非常动态并且具有多个层次元素。所以需要一个可以遍历JSON并获取所有字段名(Keys Name)的函数。

我认为的一个选择是将整个文档放入 MaP 对象并运行 Map 函数以获取所有键。但不确定 MarkLogic 是否允许将整个 json 文档捕获到 Map 中,并且可以读取字段名称。

提前致谢

获取遍历JSON文档拉取Key Name的函数

示例 JSON

var object = {
aProperty: {
aSetting1: 1,
aSetting2: 2,
aSetting3: 3,
aSetting4: 4,
aSetting5: 5
},
bProperty: {
bSetting1: {
bPropertySubSetting : true
},
bSetting2: "bString"
},
cProperty: {
cSetting: "cString"
}
}

StackOverflow 提供的解决方案

Recursively looping through an object to build a property list

*

function iterate(obj, stack) {
for (var property in obj) {
if (obj.hasOwnProperty(property)) {
if (typeof obj[property] == "object") {
iterate(obj[property], stack + '.' + property);
} else {
console.log(property + " " + obj[property]);
$('#output').append($("<div/>").text(stack + '.' + property))
}
}
}
}
iterate(object, '')*

最佳答案

这个方便的页面可能会有所帮助:MarkLogic - Native JSON

以下将提取所有属性名称

var json = fn.head(xdmp.unquote('{  foo : "bar", baz : { buz: "boo", chicken : { option1 : "soup", option2 : "salad" } } }'))

json.xpath("//*/name()");

输出:foo baz buz chicken option1 option2

如果在查看该页面上的示例后您仍然需要帮助,我建议使用示例 JSON 和所需的输出更新您的问题(即使它是动态的,人们可以复制/粘贴示例并使用很多帮助)

关于javascript - MarkLogic 使用 javascript 获取 Json 文档的所有嵌套字段名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48743842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com