Folgende Situation: Zwei JSON-Dateien, die geladen werden müssen, und Code, der ausgeführt werden soll, wenn beide geladen sind. Verschachtelt sähe das so aus:
var aRequest = new Request('a.json');
var bRequest = new Request('b.json');
fetch(aRequest)
	.then(function (response) { return response.json(); })
	.then(function (aData)
	{
		fetch(bRequest)
			.then(function (response) { return response.json(); })
			.then(function (bData)
			{
				// do something with aData and bData
			});
	});
Ist aber nicht richtig asynchron. Die Dateien sollten unabhängig voneinander parallel geladen werden:
var aRequest = new Request('a.json');
var bRequest = new Request('b.json');
fetch(aRequest)
	.then(function (response) { return response.json(); })
	.then(function (aData)
	{
		// …
	});
fetch(bRequest)
	.then(function (response) { return response.json(); })
	.then(function (bData)
	{
		// …
	});
function doSomething(aData, bData)
{
	// do something with aData and bData
}
Aber was müsste dann anstelle von // … stehen, damit doSomething(aData, bData) aufgerufen wird, sobald beide JSON-Dateien geladen sind?
LLAP 🖖
-- 
“When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
  “When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
 nicht angemeldet
 nicht angemeldet Gunnar Bittersmann
 Gunnar Bittersmann TS
 TS Matthias Apsel
 Matthias Apsel Orlok
 Orlok JürgenB
 JürgenB Rolf b
 Rolf b