# JavaScript Basics Skills Certification Test

Prove your foundational JavaScript knowledge with this certification test, covering variables, functions, loops, and basic DOM manipulation.

Questions20-30Time limit15-45Category [JavaScript Basics](https://jobicy.com/test-category/javascript-basics.md) [Get started for free](#test-l)

* This test is designed to evaluate your understanding of core JavaScript concepts, syntax, common programming constructs, and essential browser interactions. It’s a great way to gauge your foundational knowledge in the language that powers dynamic web experiences.

Basic
* Intermediate
* Advanced

This is a demo version of the test. You may attempt up to 3 questions.

To take the full test and save your results, please [log in](https://jobicy.com/dashboard-page.md) or [create an account](https://jobicy.com/dashboard-page#tab2.md).

This is a demo version of the test. You may attempt up to 3 questions.

To take the full test and save your results, please [log in](https://jobicy.com/dashboard-page.md) or [create an account](https://jobicy.com/dashboard-page#tab2.md).

This is a demo version of the test. You may attempt up to 3 questions.

To take the full test and save your results, please [log in](https://jobicy.com/dashboard-page.md) or [create an account](https://jobicy.com/dashboard-page#tab2.md).

## Instructions

- The assessment has a time limit.
- Do not use search engines or seek assistance from others.
- Once you've submitted an answer, you can go back.
- You may exit the test, but the timer will continue running.
- You have 1 attempts per assessment every 30 days.

### Skills Being Assessed:

This assessment covers a broad range of JavaScript fundamentals, including:

* JavaScript Basics:
Syntax and placement of JavaScript code (<script> tags, external files).
* Comments, alert() for output.
* Variable declaration (var, let, const) and assignment.

* Data Types & Structures:
Primitive types: string, number, boolean, null, undefined.
* Complex types: object, array.
* Understanding typeof operator and NaN.

* Operators:
Arithmetic, assignment, comparison (loose == vs. strict ===).
* Logical operators, string concatenation.

* Control Flow:
Conditional statements (if/else, switch, break).
* Looping constructs (for, while, continue).

* Functions:
Declaration, invocation, and parameters.
* Basic understanding of scope, closures, and callback functions.

* String Manipulation:
Common methods like toLowerCase(), toUpperCase(), charAt(), indexOf(), substr().

* Number & Math Operations:
Math object methods (Math.round(), Math.max(), Math.floor(), Math.ceil(), Math.random()).
* String to number conversion (parseInt(), unary +).
* Understanding type coercion in arithmetic operations.

* Arrays:
Creation, accessing elements, and determining length.
* Common array methods (pop(), push(), slice(), shift(), unshift(), sort(), join(), forEach(), Array.isArray()).

* Objects:
Object literal syntax, accessing and iterating over properties (for...in, in operator).

* DOM (Document Object Model) Manipulation:
Selecting elements (document.getElementById(), document.querySelector()).
* Modifying element content (innerHTML).
* Creating and appending elements (document.createElement(), appendChild()).
* Removing elements (element.remove()).

* Events:
Handling basic user interactions (onclick, onmouseover, onkeypress).
* Understanding event bubbling (conceptual).

* Browser Object Model (BOM):
Interacting with the browser window (window.open(), window.location.href).
* Detecting browser information (navigator.appName).

* Timers:
Using setTimeout(), setInterval(), and clearing them (clearTimeout(), clearInterval()).

* JSON:
Parsing JSON strings (JSON.parse()).
* Converting JavaScript objects to JSON strings (JSON.stringify()).

* Scope & this keyword:
Basic understanding of let vs. var (block vs. function scope).
* Conceptual understanding of the this keyword.

* Strict Mode:
Purpose of "use strict".

* ES6 Basics:
Basic class declaration syntax.

### What to Review Before You Start:

To perform your best, we recommend you refresh your knowledge on:

* Core JavaScript syntax: Variable declaration, function definition, operators, and control flow statements.
* Fundamental data types: How they work and how to manipulate them, especially strings, numbers, and arrays.
* Object literals and array manipulation: Creating, accessing, and using common methods.
* DOM interaction: Selecting elements, changing their content, and responding to basic user events.
* Type coercion and comparison: The difference between == and ===, and how JavaScript handles types in operations.
* Basic scope rules and the this keyword.
* Common built-in methods for Math, String, and Array objects.
* JSON and its interaction with JavaScript objects.

Good luck with your assessment!

## Examples of Questions

- Which operator is used to assign a value to a variable?
- Which event occurs when the user clicks on an HTML element?
- How do you find the largest number in the array [1,5,10,15]?
- What will `console.log(typeof [])` output?
- How do you stop a setTimeout() execution?

## Best for

Web developers who have at least a basic knowledge of JavaScript and want to see where they currently stand.

## Share this test