4 ms·
The wiki page says: // these two lines are equivalent await a, b, c, d = moo(1, 2, 3); moo(1, 2, 3, function(a, b, c, d) {} ); So I don't see why
by snprbob86 15y ago
The wiki page says:
// these two lines are equivalent
await a, b, c, d = moo(1, 2, 3);
moo(1, 2, 3, function(a, b, c, d) {} );
So I don't see why not...
// ...these two lines would be also equivalent
await error, foo = bar(1, 2, 3);
bar(1, 2, 3, function(error, foo) {} );
- tlrobinson 15y agoExactly. The error object is a return value of the "await"-ed function, not an exception that's thrown. Here's a concrete example. Normally in Node you do something like this: fs.readFile('/etc/passwd', function (err, data) { if (err) { // handle error } // normal processing }); The await version would look like this: await err, data = fs.readFile('/etc/passwd'); if (err) { // handle error } // normal processing Ideally it would look like this: try { await data = fs.readFile('/etc/passwd'); // normal processing } catch (error) { // handle error }
- koush 15y agoThis is certainly something that is doable and crossed my mind, but I did not want to have the await be restricted to functions that conform to the typical return arguments. For now at least.
- dbrock 15y agoHow about try await foo = bar(baz) as shorthand for await error, foo = bar(baz) if (error) throw error