✨U2LA3.1: Data Type Scavenger Hunt
What are the different types of data used in JavaScript?
Teacher Notes && Overview
NB: Students who come in with a programming background may already be familiar with different data types. In that instance, this lesson could be abbreviated, altered, or skipped.
Students have been working with data of different types all year, but they have not necessarily realized it and there has not be a solid, formal lesson on data types. This is their chance to discuss and explore the types of data being used and their purpose before they start engaging with and creating functions that will return data rather than simply performing actions on the canvas.
Objectives
Students will be able to:
List common datatypes used in JavaScript
Test and identify the types of different pieces of data
Suggested Duration
1 Period (~45 minutes)
NYS Standards
9-12.DL.1 Type proficiently on a keyboard.
9-12.DL.2 Communicate and work collaboratively with others using digital tools to support individual learning and contribute to the learning of others.
Vocabulary
Data Types
String: characters enclosed in “ “, ‘ ‘, or ``.
Number: numeric values not enclosed in “ “, ‘ ‘, or . They can be further broken down into integers (positive values, negative values, and zero without decimal places) and floats (values with decimal places), but it is not necessary to make this distinction in JavaScript.
Boolean: a data type with only two value options often seen as “true” or “false”
Object: a standalone entity, with a type and the option to have many distinct properties. A good example is a sneaker - while it may always follow the same design, it can come in different colors, sizes, types of laces, etc. This would be one object with its own properties.
Planning Notes && Materials
Resources
Scavenger Hunt Worksheet (Google Doc)
Scavenger Hunt Starter Code (p5.js editor | repl.it)
Data Types in JavaScript (Youtube Video)
Assessments
Formative:
Data Type Scavenger Hunt Worksheet
Exit Slip
Summative:
Light Switch Project (upcoming mini project)
Interactive Drawing Application (upcoming unit final)
Do Now/Warm Up (2-3 minutes)
Display on board: Why won’t this code work?
Discussion & Scavenger Hunt Instructions (~7- 10 minutes)
After allowing students time to think through the do now and write down their responses, ask for some shares - many students will recognize that “fifty” is what breaks the code, despite the fact that we understand “fifty” to be a number.
Use this to launch into a conversation about data types in computer science generally, and JavaScript specifically. Be sure to review the names and definitions of these data types (some of which students may remember):
Strings
Numbers (you can discuss floats and ints if students have a background in other languages, or will progress from this class to a class run in another language)
Booleans
Objects (object literals, but arrays are also a type of object!)
Explain that there are many other data types, but JavaScript is a lightly typed language, so it is pretty kind about moving between them. Make sure students understand that we are focusing on data types today because they are about to start focusing on functions that pass data rather than conduct an action like drawing a design, and it’s important that they understand the different types of data that they can pass.
Data Type Scavenger Hunt (~10 - 15 minutes)
Distribute and explain the data type scavenger hunt to students based on the worksheet instructions, and then let them begin working. The goal is for them to plug different pieces of data into the code which then tell them the type of data the computer sees it as.
Be sure to circulate, as some students may need assistance to make sure they are removing/adding quotation marks when necessary and recording data types AND the actual data that gets printed in the correct locations.
This activity can be completed individually, in pairs, or in small groups. Best suggestion is to ask students to each complete their own activity, but compare answers within a small group.
Wrap-Up (~5-10 minutes)
Once students have completed their scavenger hunts, gather them to review answers - if not to all the data, to some of the trickier ones. Ask students to explain where possible and fill in any gaps or misconceptions they may have.
Ask:
What are things you noticed when doing this activity?
Did any of the answers surprise or confuse you?
What happened when you tested the data type of variables?
Make sure students understand that EVERY piece of data in their code has a type, and variables simply hold onto a piece of data and take the type of that piece.
You may choose to give a prolonged exit slip where students try to determine data types without computers. Consider leveling the data so you ask questions as follows:
What is the data type of “Rebecca”? (MILD)
What is the data type of 4519000? (MILD)
What is the data type of “Cat” != “Dog”? (MEDIUM)
What is the data type of [“cs”, “is”, “the”, “best”]? (MEDIUM)
What is the data type of the variable mouseIsPressed? (SPICY)
For any and all, feel free to ask students for an explanation of how they know. You can choose to have students answer all questions or a mix depending on in-class performance.
Extensions
Ask students to dig more deeply into data. Challenge them to try to create their own pieces of data, predict the type, and then see what comes up.
You may also want students to start understanding that the data type of object represents a whole set - such as an entire array - while each item in that set, or array, still maintains its own type. Consider asking them to save an array (or even an object!) to a variable and try to call individual items to see what comes up.
Last updated