Please enable JavaScript to use CodeHS

Standards Mapping

for JSE Certified Entry-Level JavaScript Programmer (JSE-40-01)

105

Standards in this Framework

60

Standards Mapped

57%

Mapped to Course

Standard Lessons
JSE.1.1
Understand fundamental terms and definitions
  1. 3.1 Hello World
  2. 3.2 Variables
  3. 3.3 User Input
  4. 3.7 Basic Functions
JSE.1.1.a
Understand fundamental terms and definitions: interpreting and the interpreter
JSE.1.1.b
Understand fundamental terms and definitions: compilation and the compiler
JSE.1.1.c
Understand fundamental terms and definitions: client-side vs. server-side programming
JSE.1.2
Set up the programming environment
  1. 1.1 Introduction to Programming With Karel
  2. 3.1 Hello World
JSE.1.2.a
Set up the programming environment: basic development tools
  1. 1.1 Introduction to Programming With Karel
  2. 3.1 Hello World
JSE.1.2.b
Set up the programming environment: online vs. local development environment (code editor, interpreter, debugger)
  1. 1.1 Introduction to Programming With Karel
  2. 3.1 Hello World
JSE.1.3
Explain client-side execution of JavaScript code
JSE.1.3.a
Explain client-side execution of JavaScript code: HTML fundamentals
JSE.1.3.b
Explain client-side execution of JavaScript code: embedding JavaScript code
JSE.1.3.c
Explain client-side execution of JavaScript code: executing code directly in the console
JSE.2.1
Use variables effectively
  1. 3.2 Variables
  2. 3.3 User Input
  3. 3.4 Basic Math
  4. 8.1 Parameters
JSE.2.1.a
Use variables effectively: naming, declaring and initializing variables
  1. 3.2 Variables
  2. 3.3 User Input
  3. 3.4 Basic Math
  4. 8.1 Parameters
JSE.2.1.b
Use variables effectively: changing values assigned to variables
  1. 3.2 Variables
  2. 3.3 User Input
  3. 3.4 Basic Math
  4. 8.1 Parameters
JSE.2.1.c
Use variables effectively: constants
  1. 3.4 Basic Math
  2. 4.1 Intro to the Canvas and Graphics
JSE.2.1.d
Use variables effectively: scope (blocks, shadowing, hoisting)
  1. 8.4 Variable Scopes
JSE.2.2
Define, identify, and use primitive data types in code: boolean, number, bigint, undefined, null
  1. 3.2 Variables
  2. 3.3 User Input
  3. 3.4 Basic Math
  4. 6.1 Booleans
JSE.2.2.a
Define, identify, and use primitive data types in code: boolean, number, bigint, undefined, null: the number range and its formats
JSE.2.2.b
Define, identify, and use primitive data types in code: boolean, number, bigint, undefined, null: the bigint range
JSE.2.2.c
Define, identify, and use primitive data types in code: boolean, number, bigint, undefined, null: boolean values
  1. 6.1 Booleans
JSE.2.2.d
Define, identify, and use primitive data types in code: boolean, number, bigint, undefined, null: empty and unknown values (null or undefined)
JSE.2.3
Define, identify, and use primitive data types in code: string
  1. 3.2 Variables
  2. 3.3 User Input
JSE.2.3.a
Define, identify, and use primitive data types in code: string: string literals - single and double quotes
  1. 3.1 Hello World
  2. 3.2 Variables
  3. 3.3 User Input
JSE.2.3.b
Define, identify, and use primitive data types in code: string: the escape character
  1. 3.1 Hello World
JSE.2.3.c
Define, identify, and use primitive data types in code: string: string interpolation
JSE.2.3.d
Define, identify, and use primitive data types in code: string: basic properties and methods: length, charAt, slice, split
JSE.2.4
Perform type-casting operations
JSE.2.4.a
Perform type-casting operations: primitive construction functions: String, Number, Bigint, Boolean
JSE.2.4.b
Perform type-casting operations: primitive conversions;
JSE.2.4.c
Perform type-casting operations: implicit conversions
JSE.2.5
Define, identify, and use complex data types in code: Object
  1. 21.1 Intro to Objects
  2. 21.2 Graphic Objects
  3. 21.3 Object Methods
  4. 21.5 Object Constructors
JSE.2.5.a
Define, identify, and use complex data types in code: Object: object as a record
  1. 21.1 Intro to Objects
JSE.2.5.b
Define, identify, and use complex data types in code: Object: object literals
  1. 21.1 Intro to Objects
JSE.2.5.c
Define, identify, and use complex data types in code: Object: getting and setting properties
JSE.2.6
Define, identify, and use complex data types in code: Array
  1. 20.1 Intro to Arrays
  2. 20.2 Adding & Removing from an Array
JSE.2.6.a
Define, identify, and use complex data types in code: Array: array as an example of a complex data type
  1. 20.1 Intro to Arrays
  2. 20.2 Adding & Removing from an Array
JSE.2.6.b
Define, identify, and use complex data types in code: Array: basic properties and methods of arrays: length, indexOf, push, unshift, pop, shift, reverse, slice, concat
  1. 20.1 Intro to Arrays
  2. 20.2 Adding & Removing from an Array
  3. 20.5 Array Methods
JSE.3.1
Recognize and proficiently utilize assignment, arithmetic, and string operators
  1. 3.3 User Input
  2. 3.4 Basic Math
  3. 3.6 Random Numbers
JSE.3.1.a
Recognize and proficiently utilize assignment, arithmetic, and string operators: definition of operators
  1. 3.4 Basic Math
JSE.3.1.b
Recognize and proficiently utilize assignment, arithmetic, and string operators: assignment operators
  1. 3.2 Variables
  2. 3.4 Basic Math
JSE.3.1.c
Recognize and proficiently utilize assignment, arithmetic, and string operators: arithmetic operators
  1. 3.4 Basic Math
JSE.3.1.d
Recognize and proficiently utilize assignment, arithmetic, and string operators: compound assignment operators
  1. 3.4 Basic Math
JSE.3.2
Identify and proficiently use logical and comparison operators
  1. 6.3 Logical Operators
  2. 6.4 Comparison Operators
  3. 6.5 Graphics and Conditionals
JSE.3.2.a
Identify and proficiently use logical and comparison operators: logical operators
  1. 6.3 Logical Operators
  2. 6.5 Graphics and Conditionals
JSE.3.2.b
Identify and proficiently use logical and comparison operators: compound assignment operators
  1. 3.4 Basic Math
  2. 6.9 For Loops
JSE.3.2.c
Identify and proficiently use logical and comparison operators: comparison operators
  1. 6.4 Comparison Operators
JSE.3.3
Recognize and effectively use the ternary and other JavaScript operators
JSE.3.3.a
Recognize and effectively use the ternary and other JavaScript operators: ternary (conditional) operator
JSE.3.3.b
Recognize and effectively use the ternary and other JavaScript operators: other operators: typeof, instanceof, and delete
JSE.3.4
Understand and implement operator precedence
JSE.3.4.a
Understand and implement operator precedence: precedence and associativity of basic operators
JSE.3.4.b
Understand and implement operator precedence: using brackets to force a specific order of operations (grouping)
JSE.3.5
Implement the mechanism for interacting with the user
  1. 3.3 User Input
  2. 10.4 Mouse Click Events
  3. 10.5 More Mouse Events
  4. 10.6 Key Events
JSE.3.5.a
Implement the mechanism for interacting with the user: dialog boxes: alert, confirm, prompt
  1. 3.3 User Input
JSE.3.5.b
Implement the mechanism for interacting with the user: actions based on user decisions
  1. 3.3 User Input
  2. 10.4 Mouse Click Events
  3. 10.5 More Mouse Events
  4. 10.6 Key Events
JSE.4.1
Implement the decision-making mechanism and organize the control flow with the if instruction
  1. 6.2 If/Else Statements
  2. 6.3 Logical Operators
  3. 6.4 Comparison Operators
  4. 6.5 Graphics and Conditionals
JSE.4.1.a
Implement the decision-making mechanism and organize the control flow with the if instruction: conditional statements: if, if-else
  1. 6.2 If/Else Statements
JSE.4.1.b
Implement the decision-making mechanism and organize the control flow with the if instruction: multiple conditional statements
  1. 6.2 If/Else Statements
  2. 6.3 Logical Operators
  3. 6.4 Comparison Operators
  4. 6.5 Graphics and Conditionals
JSE.4.1.c
Implement the decision-making mechanism and organize the control flow with the if instruction: nesting conditional statements
  1. 6.9 For Loops
JSE.4.2
Implement the decision-making mechanism and organize the control flow with the switch instruction
JSE.4.2.a
Implement the decision-making mechanism and organize the control flow with the switch instruction: conditional statement: switch-case
JSE.4.3
Implement the decision-making mechanism and organize the control flow with the do-while and while loops, and the break and continue instructions
  1. 6.6 While Loops
  2. 6.7 The Break Statement
JSE.4.3.a
Implement the decision-making mechanism and organize the control flow with the do-while and while loops, and the break and continue instructions: repeating a code fragment in a loop
  1. 6.6 While Loops
  2. 6.7 The Break Statement
JSE.4.3.b
Implement the decision-making mechanism and organize the control flow with the do-while and while loops, and the break and continue instructions: iterations
  1. 6.6 While Loops
  2. 6.7 The Break Statement
JSE.4.3.c
Implement the decision-making mechanism and organize the control flow with the do-while and while loops, and the break and continue instructions: conditions that (don't) depend on the number of iterations
  1. 6.6 While Loops
  2. 6.7 The Break Statement
JSE.4.3.d
Implement the decision-making mechanism and organize the control flow with the do-while and while loops, and the break and continue instructions: basic statements related to loops: while, do... while, break, case
  1. 6.6 While Loops
  2. 6.7 The Break Statement
JSE.4.4
Implement the decision-making mechanism and organize the control flow with the for statement
  1. 6.9 For Loops
  2. 6.10 For Loops and Graphics
JSE.4.4.a
Implement the decision-making mechanism and organize the control flow with the for statement: repeating a code fragment using the for statement
  1. 6.9 For Loops
  2. 6.10 For Loops and Graphics
JSE.4.5
Implement the decision-making mechanism and organize the control flow with the for-in statement
  1. 21.4 Iterating Through an Object
JSE.4.5.a
Implement the decision-making mechanism and organize the control flow with the for-in statement: using the for... in statement for enumerating object keys
  1. 21.4 Iterating Through an Object
JSE.4.6
Implement the decision-making mechanism and organize the control flow with the for-of statement
  1. 20.3 Iterating Through an Array
JSE.4.6.a
Implement the decision-making mechanism and organize the control flow with the for-of statement: using the for... of statement for traversing arrays
  1. 20.3 Iterating Through an Array
JSE.5.1
Organize and decompose the code using functions
  1. 3.7 Basic Functions
  2. 8.1 Parameters
  3. 8.2 Return Values
JSE.5.1.a
Organize and decompose the code using functions: declaring, calling, and passing arguments
  1. 8.1 Parameters
  2. 8.2 Return Values
  3. 8.3 Default Parameter Values
JSE.5.1.b
Organize and decompose the code using functions: returning function results
  1. 8.2 Return Values
JSE.5.2
Organize and implement interactions between the function and its environment
  1. 8.1 Parameters
  2. 8.2 Return Values
  3. 10.1 Timers
  4. 10.4 Mouse Click Events
  5. 10.6 Key Events
JSE.5.2.a
Organize and implement interactions between the function and its environment: parameters
  1. 8.1 Parameters
  2. 8.2 Return Values
JSE.5.2.b
Organize and implement interactions between the function and its environment: local variables
  1. 8.4 Variable Scopes
JSE.5.2.c
Organize and implement interactions between the function and its environment: shadowing
JSE.5.3
Apply function expressions and functions as first-class members in code
JSE.5.3.a
Apply function expressions and functions as first-class members in code: storing a function in a variable
JSE.5.3.b
Apply function expressions and functions as first-class members in code: passing a function as a parameter
JSE.5.3.c
Apply function expressions and functions as first-class members in code: named and anonymous function expressions
JSE.5.4
Understand and implement the concept of recursion
JSE.5.4.a
Understand and implement the concept of recursion: using recursion to solve simple computational problems
JSE.5.5
Explain and implement callback functions
JSE.5.5.a
Explain and implement callback functions: synchronous callbacks
JSE.5.5.b
Explain and implement callback functions: asynchronous callbacks
JSE.5.5.c
Explain and implement callback functions: setTimeout, setInterval
  1. 10.1 Timers
  2. 10.2 Stopping Timers
JSE.5.6
Explain and implement arrow functions
JSE.5.6.a
Explain and implement arrow functions: notation of function expressions in the arrow form
JSE.5.6.b
Explain and implement arrow functions: passing arguments
JSE.5.6.c
Explain and implement arrow functions: shortened form for a function body with one statement
JSE.6.1
Classify and distinguish between different programming errors
  1. 16.2 Debugging with Karel
JSE.6.1.a
Classify and distinguish between different programming errors: error classification: syntax, semantics, and logical errors
  1. 16.2 Debugging with Karel
JSE.6.1.b
Classify and distinguish between different programming errors: runtime errors
  1. 16.2 Debugging with Karel
JSE.6.2
Compare and contrast different JavaScript errors and exceptions
JSE.6.2.a
Compare and contrast different JavaScript errors and exceptions: basic types of JavaScript errors: Syntax Error, ReferenceError, TypeError, RangeError
JSE.6.3
Understand, examine, and design an exception-handling mechanism in JavaScript
JSE.6.3.a
Understand, examine, and design an exception-handling mechanism in JavaScript: handling: try ... catch ... finally
JSE.6.3.b
Understand, examine, and design an exception-handling mechanism in JavaScript: throwing custom exceptions: throw
JSE.6.4
Use different debugging and troubleshooting techniques
  1. 3.2 Variables
  2. 4.1 Intro to the Canvas and Graphics
  3. 6.6 While Loops
  4. 6.8 While Loops and Graphics
  5. 16.2 Debugging with Karel
JSE.6.4.a
Use different debugging and troubleshooting techniques: step-by-step execution
  1. 3.2 Variables
  2. 4.1 Intro to the Canvas and Graphics
  3. 6.6 While Loops
  4. 6.8 While Loops and Graphics
  5. 16.2 Debugging with Karel
JSE.6.4.b
Use different debugging and troubleshooting techniques: viewing and modifying variables
  1. 3.2 Variables
  2. 4.1 Intro to the Canvas and Graphics
  3. 6.6 While Loops
  4. 6.8 While Loops and Graphics
  5. 16.2 Debugging with Karel
JSE.6.4.c
Use different debugging and troubleshooting techniques: measuring code execution time