Не видит элемент класса
я на js написал мини сортировщик:
for (let j=db.length-1; j >= 0; j--) {
if (db[j].balance > db[j-1].balance) {
db[j] = [db[j-1], db[j-1] = db[j]][0];
}
}
}
он на node js, и есть массив db = [{balance:100},{balance: 200}, и т.д.]
Он должен сортировать, но выдает такую ошибку:
at Object.<anonymous> (C:\bot - разработка\bot.js:80:33)
at Module._compile (internal/modules/cjs/loader.js:1123:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1143:10)
at Module.load (internal/modules/cjs/loader.js:972:32)
at Function.Module._load (internal/modules/cjs/loader.js:872:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47
Причем там все есть и должно вроде работать.
Ответы (1 шт):
Автор решения: Andrey RF
→ Ссылка
У тебя j доходит до 0, а в операторе if ты пытаешься достать j-1, которого нет в массиве. Тебе нужно делать проверку j>0, тогда j-1 будет максимум 0, и ты не будешь выходить за пределы массива.