Accessing array elements in Javascript - Time & Space Complexity
When we access elements in an array, we want to know how long it takes as the array grows.
We ask: Does it take longer to get an element if the array is bigger?
Analyze the time complexity of the following code snippet.
const arr = [10, 20, 30, 40, 50];
const index = 3;
const element = arr[index];
console.log(element);
This code gets the element at position 3 from the array and prints it.
Identify the loops, recursion, array traversals that repeat.
- Primary operation: Accessing a single element by its index.
- How many times: Exactly once, no loops or repeated steps.
Getting one element does not take longer if the array is bigger.
| Input Size (n) | Approx. Operations |
|---|---|
| 10 | 1 |
| 100 | 1 |
| 1000 | 1 |
Pattern observation: The time stays the same no matter how big the array is.
Time Complexity: O(1)
This means accessing any element takes the same short time, no matter the array size.
[X] Wrong: "Accessing an element takes longer if the array is bigger."
[OK] Correct: Arrays let us jump directly to any element by index, so size does not slow us down.
Knowing that array access is quick helps you explain why some data structures are faster for certain tasks.
"What if we searched for an element by checking each item one by one? How would the time complexity change?"
Practice
Solution
Step 1: Understand array indexing
JavaScript arrays start counting elements from 0, not 1.Step 2: Identify the first element's index
The first element is always at index 0.Final Answer:
0 -> Option CQuick Check:
First element index = 0 [OK]
- Thinking first element index is 1
- Confusing negative indexes
- Assuming index depends on array length
colors?Solution
Step 1: Recall array access syntax
JavaScript arrays use square brackets with zero-based index to access elements.Step 2: Calculate index for third element
The third element is at index 2 (0,1,2).Final Answer:
colors[2] -> Option BQuick Check:
Third element index = 2 [OK]
- Using parentheses instead of brackets
- Using curly braces
- Using index 3 for third element
const fruits = ['apple', 'banana', 'cherry']; console.log(fruits[1]);
Solution
Step 1: Identify the array elements and indexes
The array fruits has 'apple' at index 0, 'banana' at index 1, and 'cherry' at index 2.Step 2: Access element at index 1
fruits[1] returns 'banana'.Final Answer:
banana -> Option DQuick Check:
fruits[1] = banana [OK]
- Choosing first element instead
- Confusing index 1 with 2
- Expecting undefined for valid index
const numbers = [10, 20, 30]; console.log(numbers(1));
Solution
Step 1: Check array access syntax
Arrays must be accessed with square brackets, not parentheses.Step 2: Identify the error in the code
numbers(1) is invalid syntax; correct is numbers[1].Final Answer:
Using parentheses instead of square brackets -> Option AQuick Check:
Array access needs [] not () [OK]
- Using () instead of []
- Thinking index 1 is invalid
- Ignoring syntax errors
const data = [5, 10, 15];, what will console.log(data[3]); output?Solution
Step 1: Understand array length and valid indexes
The array has elements at indexes 0, 1, and 2 only.Step 2: Access index 3 which does not exist
Accessing an index outside the array returns undefined in JavaScript.Final Answer:
undefined -> Option AQuick Check:
Out-of-range index returns undefined [OK]
- Expecting error instead of undefined
- Confusing last element with index 3
- Assuming 0 is default value
Ready to prove it?
Pass the test and this pattern moves unknown
