You can refer to it as to
map and
forEach in case of arrays.
If you just want to iterate an array, will you use forEach or map? Of course both will work, and you can be ok with map in all cases. but as you know it produces another array, so probably cleaner is to stay with forEach.
Same is with
then. In contrary to
done, it produces another promise, if you don't needed it, it's cleaner to just use
done.
There are also other important implication that comes with then, that is error swallowing (try to crash in callback). If library you're using is not backed with proper error reporting mechanism, then you'll be left with silent exceptions, and trust me, it's last thing you want to deal with.