http://jsraccoon.ru/tip-advanced-reduce – продвинутое использование метода reduce
https://learn.javascript.ru/array-iteration – Массив: перебирающие методы

Promise – удобный способ организации асинхронного кода.
https://learn.javascript.ru/promise

Canvas
https://youtu.be/yXQADptc5OY – Как сделать классную анимацию для фона в Canvas

MutationObserver – отследить изменения элемента
https://developer.mozilla.org/[..]API/MutationObserver[link1]

Ссылки
[link1] https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver