в твоем примере, у тебя return 10 обязательно выполнится после ожидания одной секунды, равносильно await new Promise(resolve => setTimeout(resolve, 1000)); вообще, если ты вы...
Ты знаешь как for юзать? Просто объяви массив и пройдись по нему, аккумулируя кубы элементов, сохраняя в какую-то переменную Потом просто верни корень из этой суммы.
Гарантируется, что data не может быть null или undefined?