• Cert++
  • Exams
  • Results
  • Certle
  • Resources
    • Packs
    • Checklists
  • About
  • Upgrade
  • Settings
  • Community
  • Support
  • Changes
  • Legal

Cert++

Resource Pack

JavaScript Developer

The Salesforce Certified JavaScript Developer credential tests your knowledge of JavaScript as a language, not just Salesforce-specific tooling. This exam is a genuine JavaScript depth-check: ES6+ syntax, closures, prototype chains, the event loop, async/await, DOM APIs, Node.js fundamentals, and Jest. If you have been writing JavaScript for a year or two but never formally studied the language internals, this is the exam that will fill those gaps. It is a great resume item for any developer working in the Salesforce ecosystem.

3-Step Path to Passing

  1. 1

    Complete the JavaScript Developer Trailmix

    Start here. The official Salesforce trailmix walks you through every topic on the exam. It is not exhaustive on its own, but it surfaces the Trailhead modules that cover the core language concepts you need.
  2. 2

    Attempt Practice Exams

    I recommend my own practice exams, but I have linked other options in the Study Resources section below. The questions on this exam are code-reading style, so practicing with realistic code snippets is essential.
  3. 3

    Schedule Your Exam

    Exams run every day at all hours. No need to schedule far in advance. Schedule when you feel ready, ideally within a week of finishing your practice exams.

Core Resources

Exam Overview

Questions

65

60 scored + 5 unscored

Duration

105 min

1 hour 45 minutes

To Pass

65%

Minimum Score

Question Format

The exam tests JavaScript language proficiency across ES6+ syntax, closures, prototype-based inheritance, DOM manipulation, asynchronous programming, Node.js, and unit testing with Jest.

Scored

92%

60questions

Unscored

8%

5questions

Exam Details

Pricing

$200 registration · $100 retake

Delivery

Online proctored or at a testing center

Experience

1-2 years of JavaScript development recommended

Prerequisites

No prerequisites required

Exam Topics

Each topic section shows the topic weight, learning objectives, and links to study resources.

Variables, Types, and Collections23%

var, let, and const scoping and hoisting, temporal dead zone, type coercion, truthy and falsy evaluation, template literals, destructuring, spread and rest operators, array methods, and JSON parsing.

  • Given a scenario, write code to create variables and initialize them correctly.
  • Given a business requirement, utilize strings, numbers, and dates effectively.
  • Given a scenario or example, demonstrate awareness of type coercion and its effects.
  • Given a specific scenario, distinguish truthy or falsey evaluations.
  • Given a list of data, demonstrate data manipulation with arrays.
  • Given a JSON response, demonstrate how to operate the JSON object.

Resources

Objects, Functions, and Classes25%

Function declarations vs. expressions, arrow functions, this binding, call/apply/bind, prototype chains, object creation patterns, ES6 class syntax, private fields, inheritance, ES6 modules, and decorators.

  • Given a business requirement, locate the best function implementation.
  • Given a business requirement, apply fundamentals of object implementation to solve the business requirement.
  • Given a business requirement, apply fundamentals of class implementation to solve the business requirement.
  • Given a JavaScript module, give examples of how to use the module.
  • Given a JavaScript decorator, give examples of how to use the decorator.
  • Given a block of code, analyze the variable scope and the execution flow.

Resources

Browser and Events17%

DOM traversal and manipulation, event listeners, bubbling and capturing propagation, stopPropagation vs. preventDefault, browser-specific APIs including fetch, localStorage, sessionStorage, and the History API.

  • Given a business requirement, utilize Events, event handlers, and propagation.
  • Given a business requirement, evaluate and manipulate the DOM.
  • Given a scenario, utilize the Browser Dev Tools to investigate code behavior.
  • Given a scenario and requirements, utilize browser specific APIs.

Resources

Debugging and Error Handling7%

try/catch/finally, custom Error subclasses, structured error propagation, console API methods, Chrome DevTools breakpoints, and debugging async code.

  • Given a scenario, handle errors properly.
  • Given code to be debugged, use the console and breakpoints.

Resources

Asynchronous Programming13%

Call stack, task queue, microtask queue, the event loop model, Promises, Promise.all/allSettled/race, async/await, error propagation in async code, and tracing execution order across async boundaries.

  • Given a scenario, apply asynchronous programming concepts.
  • Given a scenario, use event loop and event monitor or determine loop outcomes.

Resources

Server Side JavaScript8%

Node.js core modules, npm and npx package management, package.json semantics, the require vs. ES module distinction, Express framework basics, and when to use Node.js for server-side solutions.

  • Given a scenario and requirements, infer which Node.js implementation is a good solution.
  • Given a scenario and requirements, infer which Node.js CLI command is a good solution.
  • Know the core Node.js modules and given requirements, infer which Node.js library/framework is a good solution.
  • Given a scenario and requirements, distinguish which Node.Js Package Management solution is the most fitting.

Resources

Testing7%

Jest test structure with describe/it/expect, jest.fn() and jest.spyOn() mocking, toBe vs. toEqual matchers, unit vs. integration test distinctions, and identifying brittle or ineffective tests.

  • With a block of code and the associated Unit Test, determine where the test is ineffective and modify it to make it more effective.

Resources

Have suggestions for this resource pack?

To help make this the ultimate resource compilation for the exam, please give your thoughts in the free Cert++ Discord.

Suggest a resource