JavaScript and Node.js Online Test

TestDome skill assessments are used by more than 11,000 companies and 1,030,000 test takers.

For Jobseekers

Practice your skills and earn a certificate of achievement when you score in the top 25%.

Take a Practice Test

For Companies

Test candidates with real-world problems and interview the best ones.

Sign Up to Offer this Test

About the test

The JavaScript and Node.js online test assesses knowledge of JavaScript and the Node.js environment, including solving live coding problems.

The assessment includes work-sample tasks, such as:

  • Working with the Promise object and the Async-Await programming pattern.
  • Serializing to/from JSON and making AJAX calls.
  • Using modules to organize code.

A good Node.js developer needs to be able to solve problems using JavaScript and Node.js and also be familiar with the Node.js ecosystem.

Sample public questions

Easy
15 min
code
Public
AI-resistant
JavaScript
Arithmetic
Arrays
Iteration

A gaming company is working on a platformer game. They need a function that will compute the character's final speed, given a map and a starting speed.

The terrain on which the game character moves forward is made from various pieces of land placed together. Implement the function calculateFinalSpeed which takes the initial speed of the character, and an array of degrees of inclination that represent the uneven terrain.

The speed of the character will increase or decrease proportionally to the incline of the land, as shown in the image below:

Image showing the increase and decrease of character speed.

The magnitude of the angle of inclination will always be < 90°. The speed change occurs only once for each piece of land. The function should immediately return 0 as the final speed if an incline reduces the speed to 0 or below 0, which makes the character lose 1 life.

For example, the below code:

console.log(calculateFinalSpeed(60, [0, 30, 0, -45, 0]));

should print:

75
Hard
10 min
code
Public
Node.js
Async-Await
Asynchronous Calls
Promise

A company uses a Node.js application that checks several data sources for requested information. Since each request to a data source is performance heavy, the application should try to check the next source only if the request failed at the current data source. That functionality was extracted into the firstSuccessfulPromise function.

The firstSuccessfulPromise function accepts an array of Promises as a promiseArray parameter. The function should return a Promise which should resolve to the first successful result from the promiseArray.

If no Promise from the promiseArray returns successfully, the function should return undefined.

For example, if the following code is executed:

firstSuccessfulPromise([new Promise((resolve, reject) => reject()), 
              new Promise((resolve, reject) => resolve("Success!"))])
  .then(result => console.log(result));

It should print "Success!".

For jobseekers: get certified

Earn a free certificate by achieving top 25% on the JavaScript and Node.js test with public questions.

Take a Certification Test

Sample silver certificate

Sunshine Caprio

Java and SQL
TestDome
Certificate
TestDome logo icon

For companies: premium questions

Buy TestDome to access premium questions that can't be practiced.
Get money back if you find any premium question answered online.

Sign Up to Offer this Test

75 more premium JavaScript and Node.js questions

Truthy Expressions, Shopping Cart, Weather Data, File Exists, Run Sequentially, Function Wrapper, Unique Numbers, Load URL, Photon Frequency, Confirm, Segment, Height, Product Rating, Validation, Array Search, Screen, Username, Snapshot, Scale Font Size, Hide Button, A Tag, Hobbies, Loading Bar, Table of Names, Reorder, Trading Data Paging, New Folder, Chain Link, Special Actions, Log Parser, Log Patch, Cards, Post Comment, Friend, Vectors, Date Transform, Airport Networks, Company Stock, Shipping, Tax Calculator, Numbers To Text, Max Sum, Launch Time, Color Codes, Row Appender, Timer, Read Write Execute, Paper Strip, Memory Game, Flimsy Ladder, Jogging App, Paragraph, Retry Request, Stream Transform, Package Declaration, Add Id, Hash Bug, Game Action, Arrange Promises, Ticket Transition, Positive Numbers, Double, Filter, Node, Planet Search, Digital Flasks, Calories Burned, Circuit Simulator, Students, Chemical Machine, Popular Book, Parking Allocation, Increase Priority, Fahrenheit Converter, Construction Game.

Skills and topics tested

  • JavaScript
  • Language
  • Node.js
  • Events
  • Asynchronous Programming
  • Modules
  • Async-Await
  • Promise
  • Closures
  • Exceptions
  • Algorithmic Thinking
  • Dictionary
  • Ajax
  • HTTP
  • Arrays
  • Dialog Box
  • Event Handling
  • Arithmetic
  • Objects
  • Attribute Manipulation
  • DOM Manipulation
  • Forms
  • Recursion
  • Bug Fixing
  • Classes
  • ECMAScript 2015
  • Regex
  • Strings
  • Styling
  • Asynchronous Calls
  • Iteration
  • HTML5
  • JSON
  • Pagination
  • Serialization
  • Sorting
  • Linked List
  • XML
  • Monkey Patching
  • Content Manipulation
  • Graphs
  • 2D Array
  • AI Code Review
  • Conditional Statements
  • Loops
  • Timing Events
  • Associative Arrays
  • Callback
  • Stream
  • NPM
  • Event Loop
  • Event Emitter
  • Tree
  • Conditions

For job roles

  • Back-End Developer
  • JavaScript Developer
  • Node.js Developer

Sample candidate report

What others say

Decorative quote

Simple, straight-forward technical testing

TestDome is simple, provides a reasonable (though not extensive) battery of tests to choose from, and doesn't take the candidate an inordinate amount of time. It also simulates working pressure with the time limits.

Jan Opperman, Grindrod Bank

Product reviews

G2 - Crowd Badge
G2 - High Performer (2022)
Capterra - 4.5 Stars
Capterra - Shortlist (2023)

Used by

Solve all your skill testing needs

150+ Pre-made tests

From web development and database administration to project management and customer support. See all pre-made tests.

90+ skills

From JavaScript and SQL to English and customer support. See all questions to filter by skill.

Multi-skills Test

Mix questions for different skills or even custom questions in one test. See an example.

How TestDome works

1

Choose a pre-made test
or create a custom test

2

Invite candidates via
email, URL, or your ATS

3

Candidates take
a test remotely

4

Sort candidates and
get individual reports

Want to know more?

Related JavaScript and Node.js Tests: