对象中重复的javascript
嘿,伙计们,我有个问题:) 结果是错误的。我正在筛选个人代码和日期。每个人都有一个数组。你可以从dateArr看到它。在dateArr中,您可以看到两个不同的数组。这实际上是两个不同的个人问题。在vm.resReport中,有这些人员的日期。我想将vm.resReport中的人员值及其人员代码设置为dateArr的人员。并将这些值设置为dateArr对象中重复的javascript,javascript,object,Javascript,Object,嘿,伙计们,我有个问题:) 结果是错误的。我正在筛选个人代码和日期。每个人都有一个数组。你可以从dateArr看到它。在dateArr中,您可以看到两个不同的数组。这实际上是两个不同的个人问题。在vm.resReport中,有这些人员的日期。我想将vm.resReport中的人员值及其人员代码设置为dateArr的人员。并将这些值设置为dateArr for(var item in vm.resReport){ for(var k=0;k < Object.keys(vm.date
for(var item in vm.resReport){
for(var k=0;k < Object.keys(vm.dateArr).length;k++){
for(var days in vm.dateArr[k].Days){
if(vm.resReport[item].mDate==vm.dateArr[k].Days[days].FullDate){
for(var per in vm.resReport[item].Details){
if(vm.dateArr[k].PersonnelCode==vm.resReport[item].Details[per].PersonnelCode){
console.log(vm.resReport[item].Details[per].PersonnelFirstName);
vm.dateArr[k].Days[days].PersonnelCode=[];
vm.dateArr[k].Days[days].PersonnelCode[vm.dateArr[k].PersonnelCode]=vm.resReport[item].Details[per].PersonnelCode;
}
}
}
}
}
}
这里是我的报告对象
[
{
"Total": 1,
"mDate": "2016-02-15",
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Total": 1,
"mDate": "2016-03-08",
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Total": 1,
"mDate": "2016-04-08",
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Total": 3,
"mDate": "2016-04-09",
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 2
},
{
"PersonnelFirstName": "Timur",
"PersonnelLastName": "Hacizade",
"PersonnelCode": "PRS_111",
"Total": 1
}
]
},
{
"Total": 1,
"mDate": "2016-04-13",
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Total": 1,
"mDate": "2016-04-14",
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
}
]
这是我的dateArr对象
[
{
"PersonnelCode": "PRS_001",
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"Days": [
{
"Day": "01",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-01",
"ID": 92,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "02",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-02",
"ID": 93,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "03",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-03",
"ID": 94,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "04",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-04",
"ID": 95,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "05",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-05",
"ID": 96,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "06",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-06",
"ID": 97,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "07",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-07",
"ID": 98,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "08",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-08",
"ID": 99,
"StatusName": 1,
"Popover": false,
"Update": false,
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Day": "09",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-09",
"ID": 100,
"StatusName": 3,
"Popover": false,
"Update": false,
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 2
},
{
"PersonnelFirstName": "Timur",
"PersonnelLastName": "Hacizade",
"PersonnelCode": "PRS_111",
"Total": 1
}
]
},
{
"Day": 10,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-10",
"ID": 101,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 11,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-11",
"ID": 102,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 12,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-12",
"ID": 103,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 13,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-13",
"ID": 104,
"StatusName": 1,
"Popover": false,
"Update": false,
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Day": 14,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-14",
"ID": 105,
"StatusName": 1,
"Popover": false,
"Update": false,
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Day": 15,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-15",
"ID": 106,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 16,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-16",
"ID": 107,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 17,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-17",
"ID": 108,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 18,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-18",
"ID": 109,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 19,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-19",
"ID": 110,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 20,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-20",
"ID": 111,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 21,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-21",
"ID": 112,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 22,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-22",
"ID": 113,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 23,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-23",
"ID": 114,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 24,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-24",
"ID": 115,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 25,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-25",
"ID": 116,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 26,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-26",
"ID": 117,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 27,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-27",
"ID": 118,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 28,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-28",
"ID": 119,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 29,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-29",
"ID": 120,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 30,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-30",
"ID": 121,
"StatusName": "NA",
"Popover": false,
"Update": false
}
],
"Update": false
},
{
"PersonnelCode": "PRS_111",
"PersonnelFirstName": "Timur",
"PersonnelLastName": "Hacizade",
"Days": [
{
"Day": "01",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-01",
"ID": 92,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "02",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-02",
"ID": 93,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "03",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-03",
"ID": 94,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "04",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-04",
"ID": 95,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "05",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-05",
"ID": 96,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "06",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-06",
"ID": 97,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "07",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-07",
"ID": 98,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": "08",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-08",
"ID": 99,
"StatusName": 1,
"Popover": false,
"Update": false,
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Day": "09",
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-09",
"ID": 100,
"StatusName": 3,
"Popover": false,
"Update": false,
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 2
},
{
"PersonnelFirstName": "Timur",
"PersonnelLastName": "Hacizade",
"PersonnelCode": "PRS_111",
"Total": 1
}
]
},
{
"Day": 10,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-10",
"ID": 101,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 11,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-11",
"ID": 102,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 12,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-12",
"ID": 103,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 13,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-13",
"ID": 104,
"StatusName": 1,
"Popover": false,
"Update": false,
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Day": 14,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-14",
"ID": 105,
"StatusName": 1,
"Popover": false,
"Update": false,
"Details": [
{
"PersonnelFirstName": "Güvenc",
"PersonnelLastName": "Vural",
"PersonnelCode": "PRS_001",
"Total": 1
}
]
},
{
"Day": 15,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-15",
"ID": 106,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 16,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-16",
"ID": 107,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 17,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-17",
"ID": 108,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 18,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-18",
"ID": 109,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 19,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-19",
"ID": 110,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 20,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-20",
"ID": 111,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 21,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-21",
"ID": 112,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 22,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-22",
"ID": 113,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 23,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-23",
"ID": 114,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 24,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-24",
"ID": 115,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 25,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-25",
"ID": 116,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 26,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-26",
"ID": 117,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 27,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-27",
"ID": 118,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 28,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-28",
"ID": 119,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 29,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-29",
"ID": 120,
"StatusName": "NA",
"Popover": false,
"Update": false
},
{
"Day": 30,
"Cls": "",
"ClsStatus": "",
"FullDate": "2016-04-30",
"ID": 121,
"StatusName": "NA",
"Popover": false,
"Update": false
}
],
"Update": false
}
]
请检查解决方案,并告诉我它是否解决了问题
for(var item in vm.resReport){
var report = vm.resReport[item];
for(var k=0;k < Object.keys(vm.dateArr).length;k++){
var dateInfo = vm.dateArr[k];
var days = dateInfo.Days;
for(var day in days){
var currDay = days[day];
if(report.mDate==currDay.FullDate){
for(var per in report.Details){
var detail = report.Details[per];
if(dateInfo.PersonnelCode==detail.PersonnelCode){
console.log(detail.PersonnelFirstName);
currDay.PersonnelCode=[];
currDay.PersonnelCode[dateInfo.PersonnelCode]=detail.PersonnelCode;
}
}
}
}
}
}
for(vm.resReport中的var项){
var report=vm.resReport[项目];
for(var k=0;k
如果希望在所有k=1
之前完成所有k=0
,等等,则需要反转循环的嵌套
for(var k=0;k < Object.keys(vm.dateArr).length;k++){
for(var item in vm.resReport){
...
}
}
for(var k=0;k
为什么要使用Object.keys(vm.dateArr.length
而不是vm.dateArr.length
?这是一个对象,你是对的,但它没有解决问题:/n还有其他想法吗?很难理解你在这里想做什么。你能显示原始值和你试图得到的结果吗?如果它是一个对象,为什么你像数组一样访问它,而不是使用键vm.dateArr[k]
应该是vm.dateArr[Object.keys(vm.dateArr)[k]]
。这是不可读的。把它放在问题中,这样你就可以把它格式化为易读的格式。谢谢你,它帮助了你,但仍然不起作用:/I我更新了我的问题,现在它更易读了。你能再看一遍吗?谢谢:)你能再给我一份resReport吗?我在编辑中添加了resReport和dateArr对象。你可以看:)再次感谢。现在请检查一下这是否有效。我看到你现在将dateArr更改为array,对吗?
for(var k=0;k < Object.keys(vm.dateArr).length;k++){
for(var item in vm.resReport){
...
}
}