Javascript 计算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,

我试图弄清楚如何在一个非常大的JSON文件中计算不同的值

下面是我10000多行JSON文件的一小部分。我需要以数字形式计算“状态”:“预订”和“状态”:“免费”的总金额

[
  {
    "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