Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is JavaScript used for in web pages?
JavaScript is used to make web pages interactive. It can respond to user actions like clicks, typing, and mouse movements to change the page without reloading.
Click to reveal answer
beginner
Explain the role of an event listener in JavaScript.
An event listener waits for a specific action (like a click) on a webpage element and then runs a function when that action happens.
DLogs 'Clicked!' to the console when the button is clicked
✗ Incorrect
The code logs the message to the browser console when the button is clicked.
Why is JavaScript important for web interactivity?
AIt makes pages respond to user actions without reloading
BIt styles the page with colors and fonts
CIt stores data on the server
DIt creates the page layout
✗ Incorrect
JavaScript allows web pages to respond instantly to user actions, improving user experience.
Which of these is NOT a typical use of JavaScript on a web page?
AAnimating images or buttons
BCreating the server database
CChanging the page content dynamically
DValidating form input before sending
✗ Incorrect
JavaScript runs in the browser and does not create or manage server databases.
Describe how JavaScript makes a web page interactive using an example.
Think about clicking a button and what happens next.
You got /4 concepts.
Explain the role of the Document Object Model (DOM) in JavaScript interactivity.
Imagine the web page as a tree of elements JavaScript can change.
You got /3 concepts.
Practice
(1/5)
1. What is the main purpose of JavaScript on a webpage?
easy
A. To style the webpage with colors and fonts
B. To make the webpage interactive by responding to user actions
C. To store data permanently on the server
D. To create static text content only
Solution
Step 1: Understand JavaScript's role
JavaScript is used to add interactivity, meaning it reacts to what users do on the page.
Step 2: Compare with other web technologies
Styling is done by CSS, and static content is HTML. Data storage is server-side, not JavaScript's main job.
Final Answer:
To make the webpage interactive by responding to user actions -> Option B
Quick Check:
JavaScript = Interactivity [OK]
Hint: JavaScript = webpage actions and reactions [OK]
Common Mistakes:
Confusing JavaScript with CSS for styling
Thinking JavaScript stores data permanently
Believing JavaScript only creates static content
2. Which of the following is the correct way to add a click event listener to a button with id myBtn in JavaScript?
easy
A. document.querySelector('myBtn').addEventListener('click', alert('Clicked!'));
B. document.getElementById('myBtn').onClick = alert('Clicked!');
C. document.getElementById('myBtn').addEventListener('click', function() { alert('Clicked!'); });
D. document.getElementById('myBtn').addEventListener('onclick', function() { alert('Clicked!'); });
Solution
Step 1: Identify correct method and event name
The method to add event listeners is addEventListener and the event name is 'click', not 'onclick'.
Step 2: Check function syntax
The event handler should be a function, so function() { alert('Clicked!'); } is correct. Directly calling alert('Clicked!') passes the result, not the function.
Final Answer:
document.getElementById('myBtn').addEventListener('click', function() { alert('Clicked!'); }); -> Option C
Quick Check:
Use addEventListener('click', function) [OK]
Hint: Use addEventListener with event name and function [OK]
Common Mistakes:
Using 'onclick' instead of 'click' in addEventListener
Assigning event handler directly instead of a function
Using querySelector without '#' for id
3. What will be the output when the following code runs and the button is clicked?
A. The getElementById method is incorrect and should be querySelector
B. The event listener should use 'onclick' instead of 'click'
C. The function changeColor should be anonymous inside addEventListener
D. The property 'background' should be 'backgroundColor' to change color
Solution
Step 1: Check CSS property used in JavaScript
To change background color, the correct style property is backgroundColor, not background.
Step 2: Verify event listener and function usage
Using 'click' event and named function is valid. getElementById is correct for id selection.
Final Answer:
The property 'background' should be 'backgroundColor' to change color -> Option D
Quick Check:
Use style.backgroundColor to change background color [OK]
Hint: Use style.backgroundColor, not style.background [OK]
Common Mistakes:
Using 'background' instead of 'backgroundColor'
Confusing 'click' event with 'onclick'
Thinking function must be anonymous
5. You want to create a button that toggles the visibility of a paragraph with id text each time it is clicked. Which code snippet correctly implements this behavior?
hard
A. const btn = document.getElementById('btn');
const text = document.getElementById('text');
btn.addEventListener('click', () => {
if (text.style.display === 'none') {
text.style.display = 'block';
} else {
text.style.display = 'none';
}
});
B. const btn = document.getElementById('btn');
const text = document.getElementById('text');
btn.addEventListener('click', () => {
text.style.visibility = 'hidden';
});
C. const btn = document.getElementById('btn');
const text = document.getElementById('text');
btn.onclick = function() {
text.style.display = 'visible';
};
D. const btn = document.getElementById('btn');
const text = document.getElementById('text');
btn.addEventListener('click', () => {
text.style.display = 'block';
});
Solution
Step 1: Understand toggle logic
To toggle visibility, check if display is 'none' and switch it to 'block', else set to 'none'.
Step 2: Analyze each option
const btn = document.getElementById('btn');
const text = document.getElementById('text');
btn.addEventListener('click', () => {
if (text.style.display === 'none') {
text.style.display = 'block';
} else {
text.style.display = 'none';
}
}); correctly toggles between 'none' and 'block'. const btn = document.getElementById('btn');
const text = document.getElementById('text');
btn.addEventListener('click', () => {
text.style.visibility = 'hidden';
}); only hides once. const btn = document.getElementById('btn');
const text = document.getElementById('text');
btn.onclick = function() {
text.style.display = 'visible';
}; uses invalid 'visible' for display. const btn = document.getElementById('btn');
const text = document.getElementById('text');
btn.addEventListener('click', () => {
text.style.display = 'block';
}); only shows without toggling.