@mariusor No not really. But you could have a wrapper function like "cachedFetch(url) { if(!dictionary[url]) dictionary[url] = fetch(url); return dictionary[url] }"
dont know if the syntax is correct :D And its not tested...but something like that was in my mind ^^
@diabhoil yes, that's exactly what I started with, however the fetches happen all before the promises resolve, so the check fails for the URL. Maybe I just need to stick the promises in there.