gpt4 book ai didi

javascript - json 对象内数组内的 JSON 对象 : Accessing specific elements

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

我正在查看一个ajax响应,它包含一个大的json对象,其中包含一个数组,其中包含如下json数据:

"chat": {
"chat": [
{
"chat_type": 0,
"chat_id": 445473683,
"chat_name": "system",
etc,
etc,
"chat_talk": "Chat+messages+here"
},
{
//Another chat message
}

]
}

聊天数组中有几十个 json 条目,其中似乎只有 1 个元素。有几个“chat_types”0、1和2。现在,我想做的是仅选择类型2且没有系统作为“chat_name”的聊天条目。

但是对象数组中的整个对象让我很困惑。我该如何实现这个目标?

编辑:到目前为止的代码 -

function modChat (clickEvent) {
var chatHistory = [];
var extraData = '{"planet_id":"6_300_6","item_config_version":"' + getChatTimeStamp() + '","count":20,"tick":"-1","language":"en"}';

//$("#chatBody").html(extraData);

runRequest(extraData, gameDataURL, function(response) {

var results = [];
var chats = JSON.stringify(response.chat.chat);
for (var i = 0; i < chats.length; i++) {
if (chats[i].chat_type == 2 && chats[i].chat_name != "system") {
results.push(chats[i]);
}
}

$("#chatBody").val(chats);

});//End postRequest

}

最佳答案

使用Array.prototype.filter :

var obj = {
"chat": {
"chat": [{
"chat_type": 0,
"chat_id": 445473683,
"chat_name": "system",
"chat_talk": "Chat+messages+here"
}, {
"chat_type": 2,
"chat_id": 445473683,
"chat_name": "system",
"chat_talk": "Chat+messages+here"
}, {
"chat_type": 2,
"chat_id": 445473683,
"chat_name": "system1",
"chat_talk": "Chat+messages+here"
}]
}
};

var res = obj.chat.chat.filter(function (item) {
return item.chat_type == 2 && item.chat_name != 'system'
});

console.log(res);

JSFIDDLE .

关于javascript - json 对象内数组内的 JSON 对象 : Accessing specific elements,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29981943/

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