Javascript 如何设置数组的属性
有人能帮我计算数组属性的代码吗?我有一个数组,我想计算所有值为1的完整项。这是我的数组Javascript 如何设置数组的属性,javascript,arrays,object,Javascript,Arrays,Object,有人能帮我计算数组属性的代码吗?我有一个数组,我想计算所有值为1的完整项。这是我的数组 [{ "order_id": "336566", "customer_name": "joel", "customer_surname": "kabeya", "total_items": "0", "completed_items": "0", "percent_complete": 1, "datetime_received": "2019-01-2
[{
"order_id": "336566",
"customer_name": "joel",
"customer_surname": "kabeya",
"total_items": "0",
"completed_items": "0",
"percent_complete": 1,
"datetime_received": "2019-01-21 15:00:27",
"delivery_date": "2019-01-24",
"delivery_from": "10:30",
"delivery_to": "12:00",
"completed": "1",
"shopper": "joel"
}, {
"order_id": "335719",
"customer_name": "joel",
"customer_surname": "kabeya",
"total_items": "0",
"completed_items": "0",
"percent_complete": 1,
"datetime_received": "2018-12-24 13:46:27",
"delivery_date": "2018-12-30",
"delivery_from": "10:30",
"delivery_to": "12:00",
"completed": "1",
"shopper": "joel"
}, {
"order_id": "336531",
"customer_name": "Tay",
"customer_surname": "Z",
"total_items": "0",
"completed_items": "0",
"percent_complete": 1,
"datetime_received": "2019-01-11 08:42:27",
"delivery_date": "2019-01-17",
"delivery_from": "10:30",
"delivery_to": "12:00",
"completed": "1",
"shopper": "joel"
}, {
"order_id": "336545",
"customer_name": "joel",
"customer_surname": "kabeya",
"total_items": "0",
"completed_items": "0",
"percent_complete": 1,
"datetime_received": "2019-01-17 19:00:27",
"delivery_date": "2019-01-18",
"delivery_from": "11:00",
"delivery_to": "12:00",
"completed": "0",
"shopper": "joel"
}, {
"order_id": "241918",
"customer_name": "Marietjie",
"customer_surname": "Short",
"total_items": "44",
"completed_items": "44",
"percent_complete": 1,
"datetime_received": "2018-07-25 15:18:25",
"delivery_date": "2018-10-29",
"delivery_from": "12:00",
"delivery_to": "13:00",
"completed": "0",
"shopper": "Tay"
}, {
"order_id": "281774",
"customer_name": "Ashleigh",
"customer_surname": "Hodge",
"total_items": "16",
"completed_items": "0",
"percent_complete": 0,
"datetime_received": "2018-10-04 15:59:19",
"delivery_date": "2018-10-29",
"delivery_from": "12:00",
"delivery_to": "13:00",
"completed": "0",
"shopper": null
}]
使用
foreach
循环进行迭代和添加。也可以使用过滤器
//foreach
foreach
循环循环遍历每个元素,并检查对象是否已完成属性设置为1。如果为1,则计数器递增并返回。否则计数器将按原样返回
//filter
过滤器还逐个循环遍历元素,如果它们满足条件(completed==1)
,它将返回true并将元素发送到一个新数组,我们将打印该数组的长度。如果返回false,则该值不会插入数组中
var a=[{
“订单id”:“336566”,
“客户名称”:“joel”,
“客户姓氏”:“卡贝亚”,
“项目总数”:“0”,
“已完成的项目”:“0”,
“完成百分比”:1,
“收到日期时间”:“2019-01-21 15:00:27”,
“交付日期”:“2019-01-24”,
“交货地点”:“10:30”,
“交付至”:“12:00”,
“已完成”:“1”,
“购物者”:“乔尔”
}, {
“订单id”:“335719”,
“客户名称”:“joel”,
“客户姓氏”:“卡贝亚”,
“项目总数”:“0”,
“已完成的项目”:“0”,
“完成百分比”:1,
“收到日期时间”:“2018-12-24 13:46:27”,
“交付日期”:“2018-12-30”,
“交货地点”:“10:30”,
“交付至”:“12:00”,
“已完成”:“1”,
“购物者”:“乔尔”
}, {
“订单id”:“336531”,
“客户名称”:“泰”,
“客户姓氏”:“Z”,
“项目总数”:“0”,
“已完成的项目”:“0”,
“完成百分比”:1,
“收到日期时间”:“2019-01-11 08:42:27”,
“交付日期”:“2019-01-17”,
“交货地点”:“10:30”,
“交付至”:“12:00”,
“已完成”:“1”,
“购物者”:“乔尔”
}, {
“订单id”:“336545”,
“客户名称”:“joel”,
“客户姓氏”:“卡贝亚”,
“项目总数”:“0”,
“已完成的项目”:“0”,
“完成百分比”:1,
“收到日期时间”:“2019-01-17 19:00:27”,
“交付日期”:“2019-01-18”,
“交付时间”:“11:00”,
“交付至”:“12:00”,
“已完成”:“0”,
“购物者”:“乔尔”
}, {
“订单号”:“241918”,
“客户名称”:“Marietjie”,
“客户姓氏”:“短”,
“项目总数”:“44”,
“已完成的项目”:“44”,
“完成百分比”:1,
“收到日期时间”:“2018-07-25 15:18:25”,
“交付日期”:“2018-10-29”,
“交付时间”:“12:00”,
“交付至”:“13:00”,
“已完成”:“0”,
“购物者”:“泰”
}, {
“订单号”:“281774”,
“客户名称”:“Ashleigh”,
“客户姓氏”:“Hodge”,
“项目总数”:“16”,
“已完成的项目”:“0”,
“完成百分比”:0,
“收到日期时间”:“2018-10-04 15:59:19”,
“交付日期”:“2018-10-29”,
“交付时间”:“12:00”,
“交付至”:“13:00”,
“已完成”:“0”,
“购物者”:空
}]
var计数=0;
a、 forEach((e)=>e.completed==“1”?计数++:计数)
控制台日志(计数);
//滤器
console.log(a.filter((e)=>e.completed==“1”?true:false).length)
利用并使用数组的length
属性。请记住,您的完成标准是completed
是字符串值“1”
。因此,基于该谓词进行筛选,然后计算剩余的项目
const yourPileOfData=[{
已完成:“1”
},
{
已完成:“1”
},
{
已完成:“0”
}
];
const count=yourPileOfData.filter(i=>i.completed==“1”).length;
控制台日志(计数)
从数组开始。reduce()
并尝试返回。甚至Array.filter(somfilterfunction).length
@egalvan10它在标记中。您也可以使用for
循环,或forEach()
函数。每当对象符合条件时,它们都只是递增一个计数器。@egalvan10我使用的是Javascript,你所说的计数所有值为1的完整项是什么意思?