<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: nicatspark</title>
    <description>The latest articles on DEV Community by nicatspark (@nicatspark).</description>
    <link>https://dev.to/nicatspark</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F520635%2F97ea2721-a19e-423e-b4d6-92be4ca71681.jpeg</url>
      <title>DEV Community: nicatspark</title>
      <link>https://dev.to/nicatspark</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nicatspark"/>
    <language>en</language>
    <item>
      <title>6 async syntax variations in Javascript.</title>
      <dc:creator>nicatspark</dc:creator>
      <pubDate>Wed, 25 Nov 2020 10:04:14 +0000</pubDate>
      <link>https://dev.to/nicatspark/6-async-syntax-variations-in-javascript-4pmc</link>
      <guid>https://dev.to/nicatspark/6-async-syntax-variations-in-javascript-4pmc</guid>
      <description>&lt;p&gt;Using async/await is prefered over the &lt;code&gt;.then&lt;/code&gt; syntax since it makes asynchronous code look synchronous and thereby easier to read. And code is all about beeing readable, right? However it's not always super clear where to put that async command.&lt;/p&gt;

&lt;p&gt;Async arrow functions look like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const foo = async () =&amp;gt; {
  // do something
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Async arrow functions look like this for a single argument passed to it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const foo = async evt =&amp;gt; {
  // do something with evt
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Async arrow functions look like this for multiple arguments passed to it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const foo = async (evt, callback) =&amp;gt; {
  // do something with evt
  // return response with callback
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The anonymous form works as well:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const foo = async function() {
  // do something
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;An async function declaration looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;async function foo() {
  // do something
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Using async function in a callback:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const foo = event.onCall(async () =&amp;gt; {
  // do something
})
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>javascript</category>
      <category>async</category>
      <category>promises</category>
    </item>
  </channel>
</rss>
