console.log("Async function (with Promise):");
await fcf.each({k1: "v1", k2: "v2", k3: "v3"}, async (a_key, a_value)=>{
await new Promise((a_resolve, a_reject)=>{
setTimeout(()=>{
console.log(new Date(), "key:", a_key, "value:", a_value);
a_resolve();
}, 1000);
});
});
console.log("");
console.log("Result Promise:");
await fcf.each({k1: "v1", k2: "v2", k3: "v3"}, (a_key, a_value)=>{
return new Promise((a_resolve, a_reject)=>{
setTimeout(()=>{
console.log(new Date(), "key:", a_key, "value:", a_value);
a_resolve();
}, 1000);
});
});
console.log("");
console.log("Async function (with fcf.Actions):");
await fcf.each({k1: "v1", k2: "v2", k3: "v3"}, async (a_key, a_value)=>{
await fcf.actions()
.then((a_result, a_act)=>{
setTimeout(()=>{
console.log(new Date(), "key:", a_key, "value:", a_value);
a_act.complete();
}, 1000);
});
});
console.log("");
console.log("Result fcf.Actions:");
await fcf.each({k1: "v1", k2: "v2", k3: "v3"}, (a_key, a_value)=>{
return fcf.actions()
.then((a_result, a_act)=>{
setTimeout(()=>{
console.log(new Date(), "key:", a_key, "value:", a_value);
a_act.complete();
}, 1000);
});
});
Output:
Async function (with Promise):
2023-02-18T02:28:24.228Z key: k1 value: v1
2023-02-18T02:28:25.230Z key: k2 value: v2
2023-02-18T02:28:26.232Z key: k3 value: v3
Result Promise:
2023-02-18T02:28:27.234Z key: k1 value: v1
2023-02-18T02:28:28.234Z key: k2 value: v2
2023-02-18T02:28:29.236Z key: k3 value: v3
Async function (with fcf.Actions):
2023-02-18T02:28:30.238Z key: k1 value: v1
2023-02-18T02:28:31.240Z key: k2 value: v2
2023-02-18T02:28:32.241Z key: k3 value: v3
Result fcf.Actions:
2023-02-18T02:28:33.242Z key: k1 value: v1
2023-02-18T02:28:34.244Z key: k2 value: v2
2023-02-18T02:28:35.246Z key: k3 value: v3