# JavaScript Skills Test and Verified JavaScript Score

> Take a JavaScript skills test that adapts to you, debug code live with a practitioner and connect your repos to prove how you handle async code and scope.

Source: https://getlemma.io/skills/javascript

JavaScript is easy to start and hard to master, which makes self-rated skill almost meaningless. Lemma records how you reason about the event loop, closures and async code in sessions and adaptive tests.

How JavaScript is assessed

Preparing for an interview? [JavaScript interview questions, junior to senior](https://getlemma.io/skills/javascript/interview-questions)

## What JavaScript competence looks like

Someone who really knows JavaScript can predict the order in which a mix of promises, timers and synchronous code will run. They know why a closure inside a loop captures the wrong value, what this points to in a callback, and when equality checks will surprise them. They read an unfamiliar stack trace calmly.

Day to day, that shows up as clean async code with proper error handling, modules that do one thing, and careful handling of mutation. They choose between arrays, maps and sets on purpose, avoid blocking the main thread, and know enough about the browser and Node runtimes to tell which one caused a bug.

### The event loop

Microtasks, macrotasks and rendering, and how they decide the order your code actually runs in.

### Closures and scope

Lexical scope, captured variables, and using closures for encapsulation without leaking memory.

### Async patterns

Promises, async and await, cancellation, and handling errors so failures never disappear silently.

### Prototypes and this

How objects inherit, how classes map onto prototypes, and how call sites change the value of this.

### Modules and tooling

ES modules, bundling, tree shaking and the difference between browser and Node module resolution.

### Data structures

Choosing arrays, objects, maps and sets, plus non-mutating updates and safe copying of nested data.

## What counts as evidence of JavaScript skills?

Listing JavaScript on a profile proves nothing on its own. What counts is a component you shipped, a session where someone watched you debug one, or a test you passed. These are the records Lemma can hold for your JavaScript skill, and where each one comes from. See the [evidence methodology](https://getlemma.io/methodology#evidence-types) for how each source is weighed.

[Live session](https://getlemma.io/product/sessions)

### Live debugging with a JavaScript practitioner

You trace a bug through real code while a practitioner watches your reasoning. Their rating of the session records how you handle async flow, scope and unexpected values.

[Adaptive assessment](https://getlemma.io/product/assessments)

### Adaptive JavaScript assessment

Scenario questions on execution order, closures and coercion adjust to your level. Some show a snippet, and you choose the output it really logs or the cause of the bug.

[GitHub connector](https://getlemma.io/product/passport)

### Commits that show your JavaScript

Connect a repository or a single commit, such as a refactor or a tricky bug fix. Lemma confirms it exists and that you have access to it.

[AI tutor practice](https://getlemma.io/product/ai-tutor)

### Practice drills with the AI tutor

Work through code exercises and explanations on weak spots like promise chaining. Drills add a small, capped amount to practice. They help you improve; they do not replace proof.

## How is a JavaScript skills test run on Lemma?

The JavaScript test is adaptive: 15 to 25 questions, each picked from how you answered the last, built around real interface bugs rather than trivia. Its result joins your live sessions and linked repositories or deployments in your JavaScript SCI, which also weighs how recent the evidence is.

[How the SCI score is calculated](https://getlemma.io/product/sci)[How adaptive skills assessments work](https://getlemma.io/product/assessments)[Practise JavaScript in live skill swap sessions](https://getlemma.io/product/sessions)[Which evidence types count](https://getlemma.io/methodology#evidence-types)[What your Skills Passport shows](https://getlemma.io/product/passport)

1.  ### Debug real code in a session

    Pair with a JavaScript practitioner on a bug or refactor. They watch how you read stack traces, reason about async timing and test your assumptions, then rate what they saw.

2.  ### Pass the adaptive assessment

    The test moves with you. Answer well and scenarios on the event loop, closures and prototypes get harder and count for more. Each question is timed, and you can't go back.

3.  ### Connect and keep it fresh

    Link GitHub work that shows idiomatic JavaScript. Keep booking sessions or practising, because evidence from long ago counts for less than recent work.

## JavaScript skills: common questions

### How can I test my JavaScript skills before applying for jobs?

Take an adaptive JavaScript assessment that raises the difficulty as you answer correctly. It shows where you are strong and where you guess. Pair that with a live debugging session, where a practitioner gives you direct feedback on how you reason through async code and scope.

### What JavaScript concepts do senior engineers expect you to know?

Execution order in the event loop, closures, how this is bound, prototype inheritance, promise error handling and module boundaries. Those are the areas Lemma's JavaScript sessions and assessment focus on, because they separate people who write JavaScript from people who understand it.

### Is knowing JavaScript enough, or should I learn TypeScript too?

Solid JavaScript comes first, because TypeScript compiles to it and every runtime bug is a JavaScript bug. Many teams now expect TypeScript as well. On Lemma each is tracked as its own skill, so evidence for one never inflates the other.

### How do I show JavaScript skills if my work code is private?

Live sessions don't need your employer's code. You can debug or build something new with a practitioner, take the adaptive assessment, and connect personal projects through GitHub. Together those show how you work without exposing anything confidential.

## Skills related to JavaScript

[Browse the skills directory](https://getlemma.io/skills)

[### TypeScript

Show that your types catch real bugs instead of just silencing the compiler.

Evidence for TypeScript](https://getlemma.io/skills/typescript)[### React

Show how you structure components, manage state and keep renders fast, with evidence behind it.

Evidence for React](https://getlemma.io/skills/react)[### Node.js

Evidence of how you build and debug Node.js services, from the event loop to production errors.

Evidence for Node.js](https://getlemma.io/skills/nodejs)[### Vue.js

Show how you use reactivity, composables and component design in Vue, with evidence.

Evidence for Vue.js](https://getlemma.io/skills/vuejs)

![Painting of an olive grove in soft sunlight with hills beyond](https://cdn.sanity.io/images/islu4peo/production/613eb3f93566423c9adf45246f2cf1a61437c04c-1680x1120.jpg?w=1080&fm=webp&q=68&fit=max)

## Start your JavaScript evidence record.

Lemma is in early access. Request an invite and we will email you when your place is ready.
