【发布时间】:2020-01-04 10:57:40
【问题描述】:
有一个数组包含appointmentID(第一个值)和supperBillID(第二个值),用逗号分隔。 AppointmentID 将是唯一的,但 superBillID 只能在连续位置上相同。我想要的是一个包含所有appointmentID 值的数组,这些值具有相同的billingID,用逗号分隔。
我编写了以下代码,但没有得到正确的输出:
var fg = ['10000021,23', '10000022,23', '10000023,24', '10000024,25', '10000025,25', '10000026,25', '10000027,26', '10000028,27'];
var tab = [];
var gbl = 0;
for (var i = 0; i < fg.length; i++, gbl++) {
var vb = fg[gbl].split(',')[1]; // Will use try catch here
var mainAr = fg[gbl].split(',')[0];
for (var j = i + 1; j < fg.length; j++) {
if (vb == fg[j].split(',')[1]) {
mainAr = mainAr + ',' + fg[j].split(',')[0];
gbl++;
}
else {
break;
}
tab.push(mainAr, vb);
}
}
示例输入:
var input = ['10000021,23', '10000022,23', '10000023,24', '10000024,25', '10000025,25', '10000026,25', '10000027,26', '10000028,27'];
预期输出:
output = ['10000021,10000023',23]
['10000023',24]
['10000024,10000025,10000026',25]
['10000027',26]
['10000028',27]
【问题讨论】:
标签: javascript arrays loops split append