Please enable JavaScript to use CodeHS

Standards Framework

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

105

Standards in this Framework

Standard Description
JSE.1.1 Understand fundamental terms and definitions
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
JSE.1.2.a Set up the programming environment: basic development tools
JSE.1.2.b Set up the programming environment: online vs. local development environment (code editor, interpreter, debugger)
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
JSE.2.1.a Use variables effectively: naming, declaring and initializing variables
JSE.2.1.b Use variables effectively: changing values assigned to variables
JSE.2.1.c Use variables effectively: constants
JSE.2.1.d Use variables effectively: scope (blocks, shadowing, hoisting)
JSE.2.2 Define, identify, and use primitive data types in code: boolean, number, bigint, undefined, null
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
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
JSE.2.3.a Define, identify, and use primitive data types in code: string: string literals - single and double quotes
JSE.2.3.b Define, identify, and use primitive data types in code: string: the escape character
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
JSE.2.5.a Define, identify, and use complex data types in code: Object: object as a record
JSE.2.5.b Define, identify, and use complex data types in code: Object: object literals
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
JSE.2.6.a Define, identify, and use complex data types in code: Array: array as an example of a complex data type
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
JSE.3.1 Recognize and proficiently utilize assignment, arithmetic, and string operators
JSE.3.1.a Recognize and proficiently utilize assignment, arithmetic, and string operators: definition of operators
JSE.3.1.b Recognize and proficiently utilize assignment, arithmetic, and string operators: assignment operators
JSE.3.1.c Recognize and proficiently utilize assignment, arithmetic, and string operators: arithmetic operators
JSE.3.1.d Recognize and proficiently utilize assignment, arithmetic, and string operators: compound assignment operators
JSE.3.2 Identify and proficiently use logical and comparison operators
JSE.3.2.a Identify and proficiently use logical and comparison operators: logical operators
JSE.3.2.b Identify and proficiently use logical and comparison operators: compound assignment operators
JSE.3.2.c Identify and proficiently use logical and comparison operators: 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
JSE.3.5.a Implement the mechanism for interacting with the user: dialog boxes: alert, confirm, prompt
JSE.3.5.b Implement the mechanism for interacting with the user: actions based on user decisions
JSE.4.1 Implement the decision-making mechanism and organize the control flow with the if instruction
JSE.4.1.a Implement the decision-making mechanism and organize the control flow with the if instruction: conditional statements: if, if-else
JSE.4.1.b Implement the decision-making mechanism and organize the control flow with the if instruction: multiple conditional statements
JSE.4.1.c Implement the decision-making mechanism and organize the control flow with the if instruction: nesting conditional statements
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
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
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
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
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
JSE.4.4 Implement the decision-making mechanism and organize the control flow with the for statement
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
JSE.4.5 Implement the decision-making mechanism and organize the control flow with the for-in statement
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
JSE.4.6 Implement the decision-making mechanism and organize the control flow with the for-of statement
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
JSE.5.1 Organize and decompose the code using functions
JSE.5.1.a Organize and decompose the code using functions: declaring, calling, and passing arguments
JSE.5.1.b Organize and decompose the code using functions: returning function results
JSE.5.2 Organize and implement interactions between the function and its environment
JSE.5.2.a Organize and implement interactions between the function and its environment: parameters
JSE.5.2.b Organize and implement interactions between the function and its environment: local variables
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
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
JSE.6.1.a Classify and distinguish between different programming errors: error classification: syntax, semantics, and logical errors
JSE.6.1.b Classify and distinguish between different programming errors: runtime errors
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
JSE.6.4.a Use different debugging and troubleshooting techniques: step-by-step execution
JSE.6.4.b Use different debugging and troubleshooting techniques: viewing and modifying variables
JSE.6.4.c Use different debugging and troubleshooting techniques: measuring code execution time