- 1
- 2
- 3
for (var i = pos_Song.length - 1; i >= 0; i--) {
pos_Song[i].sing = Singer.findOne({_id : pos_Song[i].singer}).name;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−2
for (var i = pos_Song.length - 1; i >= 0; i--) {
pos_Song[i].sing = Singer.findOne({_id : pos_Song[i].singer}).name;
}
Один ёбнутый товарищ не научился думать и ходит по массиву с конца. Классика
j123123 31.07.2017 14:19 # +1
https://lwn.net/Articles/414467/
https://bugzilla.redhat.com/show_bug.cgi?id=638477#c31
warlord 02.08.2017 12:08 # +1
Ебнутый товарищ знает, что обращение к переменной быстрее, чем обращение к свойству объекта.
Еще лучше так: for (var i = pos_Song.length; i--;) {}
Можно и так: var i = pos_Song.length; while (i--) {}
Да, это экономия на спичках. Но каждый дрочит так, как хочет.
Автор, если тебе нечем заняться на каникулах - почитай то, что тебе задали по литературе. Или маме помоги по дому.
И съеби уже из интернета.
inho 02.08.2017 18:59 # 0
warlord 02.08.2017 19:25 # +1
inho 02.08.2017 19:55 # 0
warlord 02.08.2017 20:03 # 0
inho 02.08.2017 21:36 # 0
sos 02.08.2017 22:21 # 0
Я.
roman-kashitsyn 02.08.2017 12:17 # +1
Т.е. горе-оптимизатор заоптимизировал копеечный цикл, а вот как заоптимизировать реально узкое место — чтение из базы — не подумал.
Ну и то, что запросы к базе синхронные из JS, тоже настораживает. Надеюсь, это не бэкэнд, а чья-то консольная утилитка для организации медиатеки.