我有以下JSON文件“ messages.json:”
[{"participants": ["a", "b"],
"conversation": [{"sender": "b",
"created_at": "2019-08-15T19:34:24.551116+00:00",
"text": "Not so much..."},
{"sender": "a",
"created_at": "2019-08-15T19:34:14.562795+00:00",
"text": "Good! How was yours?"},
{"sender": "b",
"created_at": "2019-08-15T19:33:47.386847+00:00",
"text": "How was your day?"}]},
{"participants": ["c", "b"],
"conversation": [{"sender": "c", "created_at": "2019-08-15T19:33:22.069005+00:00",
"text": "Hi!"},
{"sender": "b",
"created_at": "2019-08-15T19:33:05.571631+00:00", "text": "Hello"}]}]
这是C人的“聊天记录”。我该如何使用JavaScript过滤掉他/她从 c 人收到的消息? HTML的身体?我在页面中包含了jQuery。
我自己做了一些尝试,但似乎无法使它起作用。
编辑1:把手放在笔记本电脑上,这就是我所拥有的。
var a=$(json).filter(function (i,n){return
n.participants==="c","b"});
for (var i=0;i<a.length;i++)
{
alert(a[i].text[1]);
}
很明显,我有一些我不知道如何解决的问题。首先,我不知道如何仅过滤来自 c 的已收到的消息,也不知道如何在HTML正文中显示所有消息。如果有人可以帮助我,那就太好了。
答案 0 :(得分:0)
let data = messages_json;
let result = data.map(value=>value.conversation.filter(item=>item.sender=="c"));
您也可以像这样使用jquery
来更改innerText
<p id="msg"></p>
<script>$("#msg").text(result)</script>