Selecting DOM Elements
The DOM represents a webpage as objects. querySelector selects the first matching element, while querySelectorAll returns a collection of matches.
What you will learn
- Explain the purpose of selecting dom elements in a real website.
- Read and adapt a working example instead of memorizing syntax.
- Test your result and recognize a common implementation mistake.
Understanding the concept
querySelector returns the first match; querySelectorAll returns a static collection.
JavaScript adds logic and interactivity to web pages. Prefer const unless a variable needs reassignment; use let when it does.
This topic is part of the JavaScript learning track. Read the example carefully, identify each important element or statement, and try changing one part at a time. Small experiments help you see cause and effect.
Example 1: Working code
<h2 id="title">Original title</h2>
<script>
const title = document.querySelector("#title");
title.textContent = "Updated with JavaScript";
</script>
Open your browser Developer Tools (usually F12), select Console, paste the example and press Enter. Alternatively, put it in a script element in an HTML file.
How to understand this example
- Identify the syntax introduced by this lesson.
- Read the code from top to bottom and predict what it will do.
- Run the code, then compare the result with your prediction.
- Change one value, selector, or element and run it again.
Example 2: A small experiment
// Experiment: Selecting DOM Elements
const lessonNumber = 14;
console.log(`DevLearn JavaScript lesson ${lessonNumber}`);
This second example is a practice scaffold. It is not a replacement for the main example; combine the ideas to make a small working page or script.
Common mistakes and best practices
- Check the browser console for errors and use console.log while learning.
- Separate data, logic, and DOM updates to keep code understandable.
- Do not copy examples without understanding the result; inspect and test them.
- Prefer clear, descriptive names and simple code over unnecessary complexity.
Hands-on exercise
Your task: Change the text of a heading after the page loads.
Extra challenge: Improve the example for a real DevLearn student portfolio or small business website. Explain your changes in two sentences.
Show exercise guidance
Adapt the first code example to meet the exercise, run it, inspect the result and handle at least one unexpected input.
Quick knowledge check
- What problem does selecting dom elements solve?
- Which part of the main code example would you modify first?
- How would you test that your change works?
Suggested answers
querySelector returns the first match; querySelectorAll returns a static collection. The relevant part depends on your change; test by running the code and inspecting the result using the browser and its developer tools.
Next steps
Complete the exercise without copying the solution. Save your code in a folder named javascript-lesson-14, then continue to the next lesson in this track.
Explore DevLearn courses for guided projects and feedback.
Explore Live Courses →