← All Journeys

ACARA Digital Technologies Years 9–10 — Modular and Object-Oriented Programming (JavaScript)

Writing JavaScript programs in reusable pieces, including with classes and objects.

Modules (68)

1 console.log() 2 Variables: let, const, var 3 Template Literals 4 Comparison Operators 5 Boolean Logic 6 If Statements 7 For Loops 8 Decomposing a problem into sub-problems 9 Why decomposition helps: testing each part separately 10 Functions – Declaring 11 Camel casing 12 Functions – Parameters 13 Functions – Return Values 14 A function with no return gives undefined 15 Functions – Default Parameters 16 Functions – Scope 17 Functions calling other functions 18 Functions that return true or false (JavaScript) 19 Documenting a function with a comment 20 Arrow Functions 21 Passing a function as an argument (callback) 22 Arrays – Creation and Indexing 23 The array length property 24 Reading beyond the end of an array 25 Looping through an array by index 26 for...of Loops 27 Arrays – Mutating Methods 28 Removing items with pop, shift and splice 29 Searching an array with includes and indexOf 30 Passing an array to a function 31 A function that totals and averages an array 32 A function that finds the largest value in an array 33 Arrays – forEach() 34 Arrays – map() 35 Arrays – filter() 36 Arrays – reduce() 37 Reading a JavaScript error message 38 Debugging with console.log 39 Trace Tables 40 Breakpoints and stepping in browser DevTools 41 Common bugs in functions and arrays 42 Error Handling – try/catch 43 throw Statement 44 Boundary test values 45 Testing a function with console.assert 46 Modifying an existing JavaScript program 47 Why programmers use object-oriented programming 48 Class, object, property and method 49 Objects – Creation and Access 50 Changing and adding object properties 51 Nested Arrays and Objects 52 A method inside an object literal 53 OOP – Classes & Objects 54 OOP – constructor Method 55 Creating an object with new 56 The this keyword in a class 57 Reading and changing an object's properties 58 OOP – Methods 59 Methods with parameters and return values (JavaScript) 60 Methods that change an object's properties 61 One class, many objects 62 Storing objects in an array 63 Methods calling other methods 64 Designing classes with a class diagram 65 Choosing properties and methods for a class from a scenario 66 Modifying an existing class 67 Common bugs in classes and objects 68 Building a modular program with functions, arrays and classes

Smaller journeys, one per content description

The same modules, split up so a class can take just the content description it's working on.

Printables for this journey

Every module above has its own free printable worksheet with an answer key. These crosswords and word searches cover the same terms:

✎
JavaScript Crossword: Getting Started (Modules 1–10) 6 clues · console.log(), Comments, Variables: let, const, var, Basic Data Types and more
✎
JavaScript Crossword: Control Flow and Arrays & Strings (Modules 11–25) 7 clues · Comparison Operators, Boolean Logic, Truthy and Falsy Values, If Statements and more
✎
JavaScript Crossword: Arrays & Strings (Modules 21–30) 8 clues · break and continue, Arrays – Creation and Indexing, for...of Loops, Arrays – Mutating Methods and more
✎
JavaScript Crossword: Objects & Functions (Modules 31–40) 8 clues · String Search Methods, Objects – Creation and Access, Objects – Methods (keys, values, entries), Objects – for...in Loop and more
✎
JavaScript Crossword: Advanced JavaScript (Modules 41–52) 10 clues · Functions – Default Parameters, Arrow Functions, Functions – Scope, Error Handling – try/catch and more
🔎
JavaScript Word Search: Getting Started to Arrays & Strings (Modules 1–29) 20 words to find · console.log(), Comments, Variables: let, const, var, Basic Data Types and more
🔎
JavaScript Word Search: Arrays & Strings to Advanced JavaScript (Modules 21–52) 20 words to find · break and continue, Arrays – Creation and Indexing, for...of Loops, Arrays – Mutating Methods and more
✎
VCE Pseudocode Crossword: if-then-else block to Reading and tracing complex pseudocode (Modules 11–28) 10 clues · if-then-else block, else if: chained selection, for loop: for i from 1 to n, Nested for loops and more
🔎
VCE Pseudocode Word Search: What is Pseudocode to Reading and tracing complex pseudocode (Modules 1–28) 20 words to find · What is Pseudocode, Pseudocode Writing Conventions, Variable Assignment: x <- value, input keyword and more
✎
VCE Software Development U3O1 Crossword: Requirements and design tools to Naming conventions and internal documentation (Modules 10–47) 10 clues · Data dictionary, Writing a data dictionary entry, Designing classes with a class diagram, Object descriptions and more
✎
VCE Software Development U3O1 Crossword: Errors and debugging and Testing modules (Modules 168–177) 10 clues · Debugging a program with print() and trace tables, Setting a breakpoint, Stepping through code and watching variables, Tracing nested loops and more
🔎
VCE Software Development U3O1 Word Search: Requirements and design tools to Pseudocode (Modules 10–71) 21 words to find · Data dictionary, Writing a data dictionary entry, Designing classes with a class diagram, Object descriptions and more
🔎
VCE Software Development U3O1 Word Search: Errors and debugging to Artificial intelligence in programming (Modules 168–193) 20 words to find · Debugging a program with print() and trace tables, Setting a breakpoint, Stepping through code and watching variables, Tracing nested loops and more
✎
Years 7–8 Creating Digital Solutions Crossword: Defining and decomposing problems and Designing and tracing algorithms (Modules 3–47) 10 clues · Interviewing a user, Decomposing a problem into sub-problems, Decomposition diagrams, Non-functional requirements and more
🔎
Years 7–8 Creating Digital Solutions Word Search: Defining and decomposing problems to Evaluating digital solutions (Modules 3–125) 21 words to find · Interviewing a user, Decomposing a problem into sub-problems, Decomposition diagrams, Non-functional requirements and more
✎
VCE Applied Computing U1O2 Crossword: Requirements and design tools to Naming conventions and internal documentation (Modules 8–88) 10 clues · Writing an IPO chart for a program, Accessing record fields by index, Abstraction in OOP, Encapsulation in OOP and more
🔎
VCE Applied Computing U1O2 Word Search: Requirements and design tools to Legal requirements and emerging trends (Modules 8–124) 21 words to find · Writing an IPO chart for a program, Accessing record fields by index, Abstraction in OOP, Encapsulation in OOP and more
✎
IGCSE Computer Science Paper 2 Crossword: 7b Decomposition and Sub-systems (Modules 94–106) 10 clues · Sub-system, Sub-systems made of further sub-systems, Component parts of a problem: inputs, Component parts of a problem: processes and more
🔎
IGCSE Computer Science Paper 2 Word Search: 7b Decomposition and Sub-systems (Modules 94–118) 21 words to find · Sub-system, Sub-systems made of further sub-systems, Component parts of a problem: inputs, Component parts of a problem: processes and more
✎
Crossword: Modular and Object-Oriented Programming (Python) and Modular and Object-Oriented Programming (JavaScript) (Modules 681–707) 10 clues · Testing a class with assert, Building a modular program with functions, lists and classes, A function with no return gives undefined, Functions calling other functions and more
✎
Crossword: Modular and Object-Oriented Programming (JavaScript) (Modules 710–727) 10 clues · Removing items with pop, shift and splice, Searching an array with includes and indexOf, Passing an array to a function, A function that totals and averages an array and more
✎
Crossword: Modular and Object-Oriented Programming (JavaScript) (Modules 728–742) 10 clues · Modifying an existing JavaScript program, Why programmers use object-oriented programming, Class, object, property and method, Changing and adding object properties and more
✎
Crossword: Modular and Object-Oriented Programming (JavaScript) and Cyber Security Threats and Vulnerabilities (Modules 743–781) 10 clues · One class, many objects, Storing objects in an array, Methods calling other methods, Choosing properties and methods for a class from a scenario and more
🔎
Word Search: Modular and Object-Oriented Programming (Python) and Modular and Object-Oriented Programming (JavaScript) (Modules 629–707) 21 words to find · Functions that return True or False (Python), Passing a list into a function, Functions that change a list or return a new one, Building and returning a list from a function and more
🔎
Word Search: Modular and Object-Oriented Programming (JavaScript) (Modules 710–742) 21 words to find · Removing items with pop, shift and splice, Searching an array with includes and indexOf, Passing an array to a function, A function that totals and averages an array and more
🔎
Word Search: Modular and Object-Oriented Programming (JavaScript) and Cyber Security Threats and Vulnerabilities (Modules 743–809) 21 words to find · One class, many objects, Storing objects in an array, Methods calling other methods, Choosing properties and methods for a class from a scenario and more

Frequently Asked Questions

Are these worksheets free?

Yes — every worksheet and its answer key is free to view, download, and print, with no account required to access any individual module.

Do I need an account?

No account is needed to view or print a worksheet. A free teacher account adds extras like assigning modules to a class and tracking progress automatically — it takes under three minutes to set up and doesn't need a credit card.

What year level is this for?

This curriculum is aligned to the Australian Curriculum (ACARA) and Victorian Curriculum, spanning roughly Years 3 to 10 — from first sequencing and variables through to object-oriented programming and advanced data structures. Start wherever matches your class's current level; each module builds on the last.

Can I print them?

Yes — every module has a one-click Print Worksheet button that generates a printable page with the practice questions and a full answer key.

Is this aligned to a curriculum?

Yes — the module sequence is mapped to the Australian Curriculum (ACARA) and Victorian Curriculum, and a class's progress is reported back against those curriculum bands (e.g. ACARA Years 5–6 sequencing and iteration, Years 7–8 functions and data structures), not just a generic difficulty scale.

Can students use this without a teacher?

Yes — students can start any module and practice directly, no class or account required. Joining a teacher's class with a class code adds progress tracking, class badges, and live Sprints, but isn't needed to work through the worksheets or modules solo.

Do I need to know ACARA Digital Technologies Years 9–10 myself to teach this?

No — every module comes with a full worked answer key, and Cloodit tracks who's stuck automatically, so you don't need to solve each exercise yourself before assigning it or be able to debug a student's work line by line.

Add to class →
For Teachers

Add this journey to your class and track every student in real time.

Create a free teacher account →

No credit card. No setup fee. Make a class and invite students in under three minutes.

For Students

Start this journey on Cloodit — track progress, earn badges, and play live sprints with your class.

Start Learning Free →

Have a class code?