Домашнее задание ШРИ по теме "Асинхронность"

Вам дан асинхронный API, реализующий арифметические действия, операции сравнения и операции над элементами массива. Каждый метод API последним аргументом принимает callback, который будет вызван после окончания асинхронного действия. В файле example.html можно посмотреть примеры использования.

Задания

Нужно написать функцию, которая реализует задание вашего варианта. Массивами, математическими операциями и операциями сравнения пользоваться нельзя. Код нужно разместить на отдельной страничке и выложить её на GitHub Pages.

Вариант 2

Найти среднее арифметическое.

function(array: AsyncArray, cb: (result: Number) => void) {

}

Выполненное задание находится в папке task, реализация самой функции - файл task/task.js

Бонусное задание

Реализовать в отдельном файле собственную версию методов:

Promise._any = // реализация
Promise._allSettled = // реализация
Promise.prototype._finally = // реализация

Выполненное задание находится в папке bonus, реализация функций - в файле bonus/bonus.js