7/3/2023 0 Comments Javascript sleeplog ( "Hello" ) setTimeout ( ( ) => delayedGreeting ( ) console. The standard way of creating a delay in JavaScript is to use its setTimeout method. Now that we have a better understanding of JavaScript’s execution model, let’s have a look at how JavaScript handles delays and asynchronous operations. You Might Not Actually Need a JS Sleep Function If any of this is news to you, you should watch this excellent conference talk: What the heck is the event loop anyway?. Rather, it will continue on its way, output “Hello!” to the console, then when the request returns a couple of hundred milliseconds later, it will output the number of repos. It will not, however, wait for the request to complete. The JavaScript interpreter will encounter the fetch command and dispatch the request. at 21:32 2 To avoid an eslint complaint, call it resolve instead of done. If this argument is omitted, a value of 0 is used, meaning execute immediately, or more accurately, as soon as possible. let sleep require ('util').promisify (setTimeout) is three characters longer but reusable and more readable imo Brian H. 2: The time, in milliseconds (thousandths of a second), the timer should wait before the specified function or code is executed. This is because fetching data from an API is an asynchronous operation in JavaScript. 1: A function to be executed after the timer expires. If you run this code, it will output “Hello!” to the screen, then the number of public repos attributed to my GitHub account. Execution goes from top to bottom.Ĭontrast that with the equivalent JavaScript version: fetch ( '' ). It then parses the response, outputs the number of public repos attributed to my GitHub account and finally prints “Hello!” to the screen. get (uri ) )Īs one might expect, this code makes a request to the GitHub API to fetch my user data. Understanding JavaScript’s Execution Modelīefore we get going, it’s important to make sure we understand JavaScript’s execution model correctly.Ĭonsider the following Ruby code: require 'net/http' require 'json'
0 Comments
Leave a Reply. |