gpt4 book ai didi

javascript - 递归搜索对象的值

转载 作者:行者123 更新时间:2023-11-28 11:50:25 26 4
gpt4 key购买 nike

考虑这个对象:

pa = {
"133": {
"B": null,
"C": {
"A": null,
"o": "http://example.com/upn?lmt=1423895085713162"
}
},
"134": {
"B": null,
"C": {
"A": null,
"o": "http://example.com/upn?lmt=1423895111043714"
}
},
"135": {
"B": null,
"C": {
"A": null,
"o": "http://example.com/upn?lmt=1423895094505523"
}
},
"136": {
"B": null,
"C": {
"A": null,
"o": "http://example.com/upn?lmt=1423895096452313"
}
}
};

我想创建一个 URL 数组。通常我可以做类似的事情这个:

qu = keys(pa).map(ro => pa[ro].C.o);

但是,ABCo 键可以更改。我可以创建这个数组吗其他方式?我想过为 http: 做一个递归正则表达式,但我不确定如何实现。

最佳答案

您可以将 JSON.stringify()String.prototype.match()RegExp 结合使用 /http:\/\/\w+\.\w+\/\w+\?\w+=\d+/g 匹配 "http:" 后跟两个正斜杠,按单词、点、单词、正斜杠、单词、问号字符、单词、等号,后跟数字。

或者,按照 @Sierra http:[^"]+ 的建议。

var pa = { "133": { "B": null, "C": { "A": null, "o": "http://example.com/upn?lmt=1423895085713162" } }, "134": { "B": null, "C": { "A": null, "o": "http://example.com/upn?lmt=1423895111043714" } }, "135": { "B": null, "C": { "A": null, "o": "http://example.com/upn?lmt=1423895094505523" } }, "136": { "B": null, "C": { "A": null, "o": "http://example.com/upn?lmt=1423895096452313" } } };

var arr = JSON.stringify(pa).match(/http:\/\/\w+\.\w+\/\w+\?\w+=\d+/g);

console.log(arr);

关于javascript - 递归搜索对象的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38558461/

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