[英]How to parse key:value pair on JSON-like string with RegEx on JavaScript?
[英]How to parse the following json in javascript (ReactNative) having dynamic key value pair?
我有以下來自 API 的 JSON 響應。
{
"status": true,
"cakes": {
"7689": {
"id": 7689,
"flavor": "chocolate",
"cookDetails": {
"id": 101,
"firstName": "Name1",
"lastName": "LastName1"
}
},
"7690": {
"id": 7690,
"flavor": "vanilla",
"cookDetails": {
"id": 102,
"firstName": "Name2",
"lastName": "LastName2"
}
}
}
}
我用來解析這個 JSON 的語言:Javascript
框架:ReactNative
我如何解析它(注意:在解析之前我不知道蛋糕中 id 的值)?
PS:框架的新手。 非常感謝。
我對此不確定,但我認為您想以某種方式訪問 id ex 7689
的cake
而不知道其id
值。 所以你有幾種方法來處理它。 其中之一是使用for...in
循環遍歷它們:
for(var cakeId in response.cakes){
var cake = response.cakes[cakeId];
console.log(cake);
// Do whatever you want with your cake
}
如果我誤解了你,我很抱歉。 如果是這樣,請通過向我們提供您想要實現的一些示例來澄清問題。
創建一個函數
function getCake(obj,key){
let cake = obj['cakes'][key];
return cake;
}
打電話
let cakes = {
"status": true,
"cakes": {
"7689": {
"id": 7689,
"flavor": "chocolate",
"cookDetails": {
"id": 101,
"firstName": "Name1",
"lastName": "LastName1"
}
},
"7690": {
"id": 7690,
"flavor": "vanilla",
"cookDetails": {
"id": 102,
"firstName": "Name2",
"lastName": "LastName2"
}
}
}
}
getCake(cakes,'7689');
試試這個
const cakesObject = {
"status": true,
"cakes": {
"7689": {
"id": 7689,
"flavor": "chocolate",
"cookDetails": {
"id": 101,
"firstName": "Name1",
"lastName": "LastName1"
}
},
"7690": {
"id": 7690,
"flavor": "vanilla",
"cookDetails": {
"id": 102,
"firstName": "Name2",
"lastName": "LastName2"
}
}
}
};
// this is required only if cakesObject is strigified
const { cakes } = JSON.parse(cakesObject);
const cakesArray = [..Object.values(cakes)];
cakesArray.forEach(cake => {
const { id } = cake;
// write further logic
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.