У меня есть два массива:
divideArray = [2, 2, 1];
, который содержит 2 + 2 + 1 временных интервалов
и один, содержащий объекты:
starttimeArray = [{starttime: '06:00:00', divideArrayIndex: 0}, {'09:00:00', divideArrayIndex: 0}, {'12:00:00' divideArrayIndex: 0}, {'15:00:00', divideArrayIndex: 0}, {'18:00:00'divideArrayIndex: 0}];
starttimeArray.length
равнок сумме элементов divideArray
.
Теперь я хочу пройти через starttimeArray
и "присвоить" каждому свойству "divArrayIndex" соответствующий индекс divideArray
, например:
{starttime: '06:00:00', divideArrayIndex: 0}
{starttime: '09:00:00', divideArrayIndex: 0}
{starttime: '12:00:00', divideArrayIndex: 1}
{starttime: '15:00:00', divideArrayIndex: 1}
{starttime: '18:00:00', divideArrayIndex: 2}
, поскольку divideArray[0]
имеет значение 2 для первых двух слотов, divideArray[1]
также равно 2 для следующих 2 слотов и divideArray[2]
(= 1) для последнего слота.
Iпытался добиться этого с помощью вложенных циклов for, включая цикл while, но это не работает, и в настоящий момент я абсолютно не знаю, как это сделать ...
for (starttimeArrayCounter = 0; starttimeArrayCounter < starttimeArray.length;) {
for (divideArrayCounter = 0; divideArrayCounter < divideArray.length; divideArray++) {
while (divideArrayCounter < starttimeArray[starttimeArrayCounter]) {
console.log(starttimeArray[starttimeArrayCounter], divideArrayCounter);
starttimeArrayCounter++;
}
}
}
Заранее спасибо.