Javascript 计算JSON中的值并将其转换为数字形式
我试图弄清楚如何在一个非常大的JSON文件中计算不同的值 下面是我10000多行JSON文件的一小部分。我需要以数字形式计算“状态”:“预订”和“状态”:“免费”的总金额Javascript 计算JSON中的值并将其转换为数字形式,javascript,html,json,foreach,counting,Javascript,Html,Json,Foreach,Counting,我试图弄清楚如何在一个非常大的JSON文件中计算不同的值 下面是我10000多行JSON文件的一小部分。我需要以数字形式计算“状态”:“预订”和“状态”:“免费”的总金额 [ { "eventId": 126363, "eventKey": "4749466", "objectLabelOrUuid": "uuid8083", "status": "booked", "quantity": 1, "ticketType": null,
[
{
"eventId": 126363,
"eventKey": "4749466",
"objectLabelOrUuid": "uuid8083",
"status": "booked",
"quantity": 1,
"ticketType": null,
"holdTokenHash": null,
"version": 3,
"extraData": null
},
{
"eventId": 126363,
"eventKey": "4749466",
"objectLabelOrUuid": "uuid11392",
"status": "free",
"quantity": 0,
"ticketType": null,
"holdTokenHash": null,
"version": 6,
"extraData": null
},
{
"eventId": 126363,
"eventKey": "4749466",
"objectLabelOrUuid": "uuid8051",
"status": "booked",
"quantity": 1,
"ticketType": null,
"holdTokenHash": null,
"version": 2,
"extraData": null
}
]
在将它们转换成数字形式之后,我将把这些值放在一个html文档中
Seats Booked: <a id="booked"></a> Seats Free: <a id="free"></a>
据我所知,我可以使用foreach方法获取数据,但我无法计算它们。如果您有任何想法或文档可以链接到这里,请在这里告诉我 您可以在迭代时计算它们 要将值分配给元素,可以获取对象的所有条目,并使用键作为id,然后将值分配给元素 使用的技术:
- 对于迭代数组
- ,用于获取单个属性,或更高版本,用于获取数组的两个值
- 用于获取对象的所有键和值
var data=[{eventId:126363,eventKey:“4749466”,objectlabeloruid:“uuid8083”,状态:“booked”,数量:1,ticketType:null,holdTokenHash:null,版本:3,extraData:null},{eventId:126363,eventKey:“4749466”,objectlabeloruid:“uuid11392”,状态:“free”,数量:0,ticketType:null,holdTokenHash:null,版本:6,外部数据:null},{eventId:126363,eventKey:“4749466”,ObjectLabelorUID:“uuid8051”,状态:“booked”,数量:1,ticketType:null,holdTokenHash:null,版本:2,外部数据:null},
计数={预订:0,自由:0};
window.onload=函数(){
data.forEach(({status})=>count[status]++);
Object.entries(count.forEach)([id,value])=>
document.getElementById(id).innerHTML=value);
};代码>
已预订座位:免费座位:
为阵列命名
var Arr=[{eventId:126363,eventKey:“4749466”,objectlabeloruid:“uuid8083”,状态:“booked”,数量:1,ticketType:null,holdTokenHash:null,版本:3,extraData:null},{eventId:126363,eventKey:“4749466”,objectlabeloruid:“uuid11392”,状态:“free”,数量:0,ticketType:null,holdTokenHash:null,版本:6,外部数据:null},{eventId:126363,eventKey:“4749466”,ObjectLabelorUID:“uuid8051”,状态:“booked”,数量:1,ticketType:null,holdTokenHash:null,版本:2,外部数据:null};
//并运行一个简单的for循环来过滤每个项中的两个值
var=0,
自由=0;
对于(变量i=0;i
已预订座位:免费座位:
您是否只有状态的两种状态
?是的,只有“已预订”和“免费”请访问,查看和。做一些研究,搜索相关话题等;如果你被卡住了,发布你的尝试,注意输入和预期输出。var-free=0,booked=0;对于(var i=0;i如何将其实现为html?在页面加载事件中感谢您,我不知道您可以使用迭代来完成等式!现在,如果我想将数组存储在文件“data.json”中,我可以像var Arr=$.getJSON('JsonData.json')那样导入它吗?
Seats Booked: 2 Seats Free: 1