Я хочу, чтобы цикл прошел от 1 до 21, а затем использовал эти номера циклов для получения массива строк ['e1.wkh', ... 'e21.wkh']. Но сейчас единственное, что я получил, это ['e21.wkh'].Использование значения цикла внутри массива
function calculateStats() {
var obj = {}
var deviceId = "34534";
for (var i = 1; i <= 21; i++) {
var loo = i.toString();
console.log(loo);
obj[deviceId] = ['e' + loo + '.kwh'];
console.log(obj[deviceId]);
}
}
Причина в том, что вы всегда используете 'deviceId' в качестве имени элемента здесь:' OBJ [DeviceId ] = ['e' + loo + '.kwh']; 'Итак, вы всегда перезаписываете последнее значение' obj [deviceId] 'Как должны быть названы элементы в вместо него? – Markai
индекс вашего объекта obj остается таким же для цельного цикла, что является вашей проблемой в выражении obj [deviceId] = ['e' + loo + '.kwh']; вам нужно изменить это и сделать индекс инкрементным для хранения всех значений, генерируемых вашим циклом. – Vishnu