Microsoft logo

  • Published:
    August 31, 2017
  • Languages:
    English, Japanese, Chinese (Traditional), Chinese (Simplified), Spanish, Portuguese (Brazil), French, German, Korean
  • Audiences:
    IT professionals, Developers, Information workers
  • Technology:
    JavaScript (ECMAScript v5)
  • Credit toward certification:

Introduction to Programming Using JavaScript

Microsoft Certified Professional exams are provided by third-party vendors.

  • Are you attending school, or are you an instructor? Register for your exam with Certiport.

    Schedule with Certiport

  • No longer in school but still interested in technology? Register with Pearson VUE.

    Schedule with Pearson VUE

* Pricing does not reflect any promotional offers or reduced pricing for Microsoft Imagine Academy program members, Microsoft Certified Trainers, and Microsoft Partner Network program members. Pricing is subject to change without notice. Pricing does not include applicable taxes. Please confirm exact pricing with the exam provider before registering to take an exam.

Effective May 1, 2017, the existing cancellation policy will be replaced in its entirety with the following policy: Cancelling or rescheduling your exam within 5 business days of your registered exam time is subject to a fee. Failing to show up for your exam appointment or not rescheduling or cancelling your appointment at least 24 hours prior to your scheduled appointment forfeits your entire exam fee.

Skills measured

This exam measures your ability to accomplish the technical tasks listed below. View video tutorials about the variety of question types on Microsoft exams.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification program.

If you have concerns about specific questions on this exam, please submit an exam challenge.

If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.

Program with JavaScript Operators, Methods, and Keywords (20-25%)
  • Complete or debug code that uses assignment and arithmetic operators
    • Assignment; increment; decrement; addition; subtraction; division; multiplication; modulus; compound assignment operators
  • Apply JavaScript best practices  
    • Comments; indentations; naming conventions; noscript; constants; reserved keywords; debugger keyword; setting breakpoints; console.log
  • Evaluate the use of inline and external scripts
    • When to use, how to use, and what happens when both are used
  • Implement exception handling
    • try; catch; finally
  • Complete and debug code that interacts with the Browser Object Model (BOM)
    • Manage state; display dialogs; determine screen size
Program with Variables, Data Types, and Functions (25-30%)
  • Declare and use variables of primitive data types 
    • Number; Boolean; String; Null; Undefined; typeof operator; type checking functions; use strict; converting between data types; formatting numbers; string operations; single quote vs double quote (nesting); initialization
  • Declare and use arrays
    • Single-dimensional arrays; multi-dimensional arrays; iteration; initialization; define an array; sort and search an array; use push, pop, shift, and unshift methods; use the length property; access an array element;
  • Complete and debug code that uses objects
    • Properties; methods; instantiation; Date object; retrieve date and time parts; localize date format (MM/DD vs DD/MM); add and subtract dates
  • Complete and debug code that uses built-in Math functions
    • Random; round; abs; floor; ceiling; min; max; pow; sqrt
  • Complete and debug a function that accepts parameters and returns a value
    • Reusable code; local versus global scope, redefine variables, pass parameters, value versus reference, return values
Implement and Analyze Decisions and Loops (20-25%)
  • Evaluate expressions that use logical and comparison operators
    • ==; !=; <, >; <=; >=; !; &&; ||
  • Complete and debug decision statements
    • if; else if; switch; nested if
  • Complete and debug loops
    • for; while; do; break; continue
Interact with the Document Object Model (15-20%)
  • Identify and construct the Document Object Model (DOM) tree
    • window; document; body; other HTML elements
  • Identify and handle HTML events
    • onchange; onmouseover; onload; onclick; onmouseout; onkeydown
  • Complete and debug code that  outputs to an HTML document
    • innerHTML; document.write
  • Complete and debug code that locates, modifies, and adds HTML elements and attributes
    • getElementByld; getElementsByTagName; getElementsByClassName; setAttribute; createElement
Interact with HTML Forms (5-10%)
  • Complete and debug code that retrieves input from forms and sets form field values
    • Retrieve form values; identify the DOM path; get values from different types of elements; prepopulate values; mask values
  • Complete and debug code that performs input validation
    • Case; string comparisons; Not-A-Number (NaN)
  • Describe the form submission process
    • onsubmit; post versus get; potential targets for submission

Preparation options

Practice test

Take a Microsoft Official Practice Test for exam 98-382

Beginning in April 2017, over time, practice tests will become available in multiple languages, including Spanish, Chinese (Simplified), Chinese (Traditional), French, German, Japanese, Portuguese (Brazil), and Russian. To see when a specific language is offered for this practice test, please check back.

Who should take this exam?

Candidates for this exam should be able to recognize and write syntactically correct JavaScript code, use data types supported by JavaScript, and be able to recognize and write JavaScript code that will logically solve a given problem.

Candidates are expected to have at least 100 hours of instruction or hands-on experience with the JavaScript programming language. Candidates should also be familiar with JavaScript features and capabilities, and understand how to write, debug, and maintain well-formed, well documented JavaScript code.

More information about exams

Preparing for an exam

We recommend that you review this exam preparation guide in its entirety and familiarize yourself with the resources on this website before you schedule your exam. See the Microsoft Certification exam overview for information about registration, videos of typical exam question formats, and other preparation resources. For information on exam policies and scoring, see the Microsoft Certification exam policies and FAQs.


This preparation guide is subject to change at any time without prior notice and at the sole discretion of Microsoft. Microsoft exams might include adaptive testing technology and simulation items. Microsoft does not identify the format in which exams are presented. Please use this preparation guide to prepare for the exam, regardless of its format. To help you prepare for this exam, Microsoft recommends that you have hands-on experience with the product and that you use the specified training resources. These training resources do not necessarily cover all topics listed in the "Skills measured" section.