Creating & Using Objects and Arrays in JS
Master the building blocks of data in JavaScript. Learn how to organize information with key-value pairs in Objects and ordered lists in Arrays.
/* Storing collections of data... */
Objects: The 'What'
Objects in JavaScript are collections of key-value pairs, wrapped in curly braces {}
. They're perfect for describing something with multiple characteristics, like a user with a name and age. Think of it like a dictionary or a label-maker for your data.
Arrays: The 'List'
Arrays are ordered lists of values, wrapped in square brackets []
. Each item, or element, has a numerical position called an index, starting from 0. They are ideal for storing a sequence of items, like a to-do list or a collection of numbers.
Accessing Data: Getting Stuff Out
To get data out, you use specific notations. For objects, you use dot notation (e.g., user.name
) or bracket notation (e.g., user['name']
). For arrays, you always use bracket notation with the index number (e.g., tasks[0]
).
Combining Them: Arrays of Objects
The real power comes from combining them. A very common pattern is an array of objects. For example, you can have a list of users, where each user in the list is an object with its own properties. This is the foundation for handling complex data from APIs.
Practice Zone
Interactive Test 1: Identify the Structure
Drag the data types to their correct structure.
Arrastra en el orden correspondiente.
Arrastra las opciones:
Completa el código:
Interactive Test 2: Build an Object
Complete the code to create a 'user' object.
Rellena los huecos en cada casilla.
const user = { : 'Alice', : 28 };
Practice Example: Code an Array
Create an array called `colors` containing "red", "green", and "blue". Then, use `console.log` to display the second color ("green").
Data in the Wild: Real World JS
Objects and arrays aren't just academic concepts; they are the backbone of how data is handled in modern web applications. Here's a look at them in action.
1. Modeling Real-World Things
Objects are perfect for modeling entities. A blog post, a product, a user profile—all of these can be neatly represented by an object with descriptive keys.
const product = {
id: 'abc-123',
name: 'Wireless Mouse',
inStock: true
};
Wireless Mouse
In Stock2. Managing Lists and Collections
Whenever you see a list on a website—a social media feed, a list of emails, items in a shopping cart—it's almost certainly powered by an array. Often, it's an array of objects.
// An array of post objects
const feed = [
{ user: 'Sam', text: '...' },
{ user: 'Jo', text: '...' },
];
3. Data from Servers (APIs)
When your browser requests data from a server, it usually receives it in JSON (JavaScript Object Notation) format. JSON is essentially a text-based version of JavaScript objects and arrays, making it incredibly easy to work with.
// A typical API response
fetch('/api/users')
.then(res => res.json())
.then(data => {
// data is now a JS array!
});
Practical Takeaway: Master objects for describing *things* and arrays for listing them. This combination will allow you to structure and manage virtually any data you encounter in web development.
JavaScript Data Glossary
- Object
- A collection of key-value pairs, enclosed in curly braces
{}
. Used for storing related data about a single entity. - Array
- An ordered list of values, enclosed in square brackets
[]
. Used for storing a collection of items. - Property
- A single key-value pair within an object (e.g.,
name: 'Alex'
). - Element
- A single item within an array (e.g., the number
98
in[98, 77]
). - Index
- The numerical position of an element in an array. It always starts at 0.
- Dot Notation
- A way to access an object's property using a period (e.g.,
user.name
). It's clean and easy to read. - Bracket Notation
- A way to access properties or elements using square brackets (e.g.,
user['name']
orscores[0]
). It's required for array access and for object keys with spaces or special characters.