gpt4 book ai didi

javascript - 循环 javascript 对象数组(在另一个对象内)

转载 作者:行者123 更新时间:2023-11-29 17:36:31 26 4
gpt4 key购买 nike

我需要循环一个 javascript 对象数组

这是我的对象响应:

{
"kind": "calendar#events",
"etag": "\"p3288namrojte20g\"",
"summary": "pedicura",
"updated": "2019-05-01T14:25:51.642Z",
"timeZone": "America/Argentina/Cordoba",
"accessRole": "owner",
"defaultReminders": [
{
"method": "popup",
"minutes": 30
}
],
"nextSyncToken": "CJCLqtvE-uECEJCLqtvE-uECGAU=",
"items": [
{
"kind": "calendar#event",
"etag": "\"3113441344690000\"",
"id": "hb6me2h********1dun5rs10",
"status": "confirmed",
"htmlLink": "https://www.google.com/calendar/event?eid=aGI2bWUyaGFvaGtqbWI4bXYxZHVuNXJzMTAgZTYyMXJtMD********Zw",
"created": "2019-05-01T14:12:08.000Z",
"updated": "2019-05-01T14:24:32.345Z",
"summary": "Prueba de: Pedicura en sala 2-x",
"description": "x-prueba de añadir masajes en sala 2 y notificar al manicura y a otra persona, fernanda?",
"creator": {
"email": "guit----@gmail.com"
},
"organizer": {
"email": "e---s90vak@group.calendar.google.com",
"displayName": "pedicura",
"self": true
},
"start": {
"dateTime": "2019-05-08T21:00:00-03:00",
"timeZone": "America/Argentina/Buenos_Aires"
},
"end": {
"dateTime": "2019-05-08T23:00:00-03:00",
"timeZone": "America/Argentina/Buenos_Aires"
},
"iCalUID": "hb6me2ha----s10@google.com",
"sequence": 2,
"attendees": [
{
"email": "aleja----it@gmail.com",
"responseStatus": "needsAction"
},
{
"email": "j----d@gmail.com",
"responseStatus": "needsAction"
}
],
"reminders": {
"useDefault": true
}
},
{
"kind": "calendar#event",
"etag": "\"3113441378884000\"",
"id": "tv**0nbhkt**47la0k",
"status": "confirmed",
"htmlLink": "https://www.google.com/calendar/event?eid=dHZmOTQwbmJoa3Q3cnJvYjJsMW00N2xhMGsgZTYyMXJtM*****",
"created": "2019-05-01T14:18:53.000Z",
"updated": "2019-05-01T14:24:49.442Z",
"summary": "Prueba de: Pedicura en sala 2-x",
"description": "x-prueba de añadir masajes en sala 2 y notificar al manicura y a otra persona, fernanda?",
"creator": {
"email": "guit----@gmail.com"
},
"organizer": {
"email": "e---s90vak@group.calendar.google.com",
"displayName": "pedicura",
"self": true
},
"start": {
"dateTime": "2019-05-07T21:00:00-03:00",
"timeZone": "America/Argentina/Buenos_Aires"
},
"end": {
"dateTime": "2019-05-07T23:00:00-03:00",
"timeZone": "America/Argentina/Buenos_Aires"
},
"iCalUID": "tvf940nbhk----m47la0k@google.com",
"sequence": 2,
"attendees": [
{
"email": "ale---it@gmail.com",
"responseStatus": "needsAction"
},
{
"email": "j--d@gmail.com",
"responseStatus": "needsAction"
}
],
"reminders": {
"useDefault": true
}
},
{
"kind": "calendar#event",
"etag": "\"3113441503284000\"",
"id": "tqhje1kd*****0",
"status": "confirmed",
"htmlLink": "https://www.google.com/calendar/event?eid=dHFoamUxa2Q0MG51M2Q3cGd2b2xlOGRqODAgZTYyMX*****",
"created": "2019-05-01T14:25:51.000Z",
"updated": "2019-05-01T14:25:51.642Z",
"summary": "Prueba de",
"description": "x-prueba de añadir masajes en sala 2 y notificar al manicura y a otra persona, fernanda?",
"creator": {
"email": "guit----@gmail.com"
},
"organizer": {
"email": "e---s90vak@group.calendar.google.com",
"displayName": "prueba",
"self": true
},
"start": {
"dateTime": "2019-04-26T21:00:00-03:00",
"timeZone": "America/Argentina/Buenos_Aires"
},
"end": {
"dateTime": "2019-04-26T23:00:00-03:00",
"timeZone": "America/Argentina/Buenos_Aires"
},
"iCalUID": "tqh*****7pgvole8dj80@google.com",
"sequence": 0,
"attendees": [
{
"email": "-it@gmail.com",
"responseStatus": "needsAction"
},
{
"email": "-aud@gmail.com",
"responseStatus": "needsAction"
}
],
"reminders": {
"useDefault": true
}
}
]
}

我想循环项目(在 body 内部),我试过这样的事情:

var dataStr = JSON.stringify(response);
var dataPrs = JSON.parse(dataStr);
var dataList = JSON.stringify(dataPrs.items);
dataStr = JSON.stringify(dataList);
dataPrs = JSON.parse(dataStr);
dataListPrs.forEach( console.log(dataPrs.htmlLink) );

还有:

cons items = data.items;
items.forEach(x => console.log(x.htmlLink))

还有:

var dataStr = JSON.stringify(response);
var dataPrs = JSON.parse(dataStr);
var body = dataPrs.body.items;
console.log("body", body);
const items = response.items;
console.log("items", items);
items.forEach(x => console.log(x.htmlLink));

但是 items 始终是 undefined

最佳答案

根据您提供的内容,我希望这些行能够工作:

const items = response.items;
console.log("items", items);
items.forEach(x => console.log(x.htmlLink));

当我将 response 设置为您提供的 JSON 时,它在我的测试中起作用。所以我希望 response 不是你认为的那样,当这段代码运行时。

const response =  {"kind":"calendar#events","etag":"\"p3288namrojte20g\"","summary":"pedicura","updated":"2019-05-01T14:25:51.642Z","timeZone":"America/Argentina/Cordoba","accessRole":"owner","defaultReminders":[{"method":"popup","minutes":30}],"nextSyncToken":"CJCLqtvE-uECEJCLqtvE-uECGAU=","items":[{"kind":"calendar#event","etag":"\"3113441344690000\"","id":"hb6me2h********1dun5rs10","status":"confirmed","htmlLink":"https://www.google.com/calendar/event?eid=aGI2bWUyaGFvaGtqbWI4bXYxZHVuNXJzMTAgZTYyMXJtMD********Zw","created":"2019-05-01T14:12:08.000Z","updated":"2019-05-01T14:24:32.345Z","summary":"Prueba de: Pedicura en sala 2-x","description":"x-prueba de añadir masajes en sala 2 y notificar al manicura y a otra persona, fernanda?","creator":{"email":"guit----@gmail.com"},"organizer":{"email":"e---s90vak@group.calendar.google.com","displayName":"pedicura","self":true},"start":{"dateTime":"2019-05-08T21:00:00-03:00","timeZone":"America/Argentina/Buenos_Aires"},"end":{"dateTime":"2019-05-08T23:00:00-03:00","timeZone":"America/Argentina/Buenos_Aires"},"iCalUID":"hb6me2ha----s10@google.com","sequence":2,"attendees":[{"email":"aleja----it@gmail.com","responseStatus":"needsAction"},{"email":"j----d@gmail.com","responseStatus":"needsAction"}],"reminders":{"useDefault":true}},{"kind":"calendar#event","etag":"\"3113441378884000\"","id":"tv**0nbhkt**47la0k","status":"confirmed","htmlLink":"https://www.google.com/calendar/event?eid=dHZmOTQwbmJoa3Q3cnJvYjJsMW00N2xhMGsgZTYyMXJtM*****","created":"2019-05-01T14:18:53.000Z","updated":"2019-05-01T14:24:49.442Z","summary":"Prueba de: Pedicura en sala 2-x","description":"x-prueba de añadir masajes en sala 2 y notificar al manicura y a otra persona, fernanda?","creator":{"email":"guit----@gmail.com"},"organizer":{"email":"e---s90vak@group.calendar.google.com","displayName":"pedicura","self":true},"start":{"dateTime":"2019-05-07T21:00:00-03:00","timeZone":"America/Argentina/Buenos_Aires"},"end":{"dateTime":"2019-05-07T23:00:00-03:00","timeZone":"America/Argentina/Buenos_Aires"},"iCalUID":"tvf940nbhk----m47la0k@google.com","sequence":2,"attendees":[{"email":"ale---it@gmail.com","responseStatus":"needsAction"},{"email":"j--d@gmail.com","responseStatus":"needsAction"}],"reminders":{"useDefault":true}},{"kind":"calendar#event","etag":"\"3113441503284000\"","id":"tqhje1kd*****0","status":"confirmed","htmlLink":"https://www.google.com/calendar/event?eid=dHFoamUxa2Q0MG51M2Q3cGd2b2xlOGRqODAgZTYyMX*****","created":"2019-05-01T14:25:51.000Z","updated":"2019-05-01T14:25:51.642Z","summary":"Prueba de","description":"x-prueba de añadir masajes en sala 2 y notificar al manicura y a otra persona, fernanda?","creator":{"email":"guit----@gmail.com"},"organizer":{"email":"e---s90vak@group.calendar.google.com","displayName":"prueba","self":true},"start":{"dateTime":"2019-04-26T21:00:00-03:00","timeZone":"America/Argentina/Buenos_Aires"},"end":{"dateTime":"2019-04-26T23:00:00-03:00","timeZone":"America/Argentina/Buenos_Aires"},"iCalUID":"tqh*****7pgvole8dj80@google.com","sequence":0,"attendees":[{"email":"-it@gmail.com","responseStatus":"needsAction"},{"email":"-aud@gmail.com","responseStatus":"needsAction"}],"reminders":{"useDefault":true}}]}

const items = response.items;
console.log("items", items);
items.forEach(x => console.log(x.htmlLink));

关于javascript - 循环 javascript 对象数组(在另一个对象内),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55944431/

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