Surya JS Journey

Learn JavaScript through concepts, code, and guided practice.

A focused workspace for concept study, interactive examples, visual explanations, and challenge solving.

Concept Playground

Async / Await

The `async` keyword makes a function return a promise, and `await` pauses execution inside that function until a promise settles. This reduces promise-chaining noise and makes asynchronous code easier to read. Under the hood, `await` still resumes execution through the microtask queue.

Mode

Practice mode

Run code, inspect output, and reset instantly.

Source

Loaded from a concept

Starter code is loaded directly into the editor.

File

async-await.js

Same code, editable immediately in the browser.

Workspace Flow

1. Edit the snippet

Change the code freely to test ideas and edge cases.

2. Run and inspect

Use the output panel to confirm behavior and catch runtime errors.

3. Reset or continue

Restore the starter or branch into your own experiment.

Practice Workspace

async-await.js

Edit the code, run it in the browser, and inspect the console output below. Reset restores the original snippet for this page.

Editor

7 lines

Output

0 entries

Mode

practice

Workspace Notes

Changes stay local until you run the code. Reset restores the original snippet immediately for another pass.

Live editing

Safe to change before every run.

Fast reset

Return to the original starter instantly.

async-await.js
7 linesMonaco Editor
Loading...

Editor Actions

Use the editor to explore the example, then run it to inspect the console.

Console0 entries

Run the code to see output here.

Expected Output

loading lesson
lesson ready

Want a blank workspace again? Go back to the default playground.