Bird
Raised Fist0
Javascriptprogramming~5 mins

Primitive data types in Javascript - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Primitive data types
O(1)
Understanding Time Complexity

We want to understand how fast operations on primitive data types run in JavaScript.

How does the time to work with these simple values change as we use more or bigger data?

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


const a = 5;
const b = 'hello';
const c = true;

const sum = a + 10;
const greeting = b + ' world';
const isFalse = !c;

console.log(sum, greeting, isFalse);
    

This code uses simple operations on primitive data types: numbers, strings, and booleans.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: Simple arithmetic and string concatenation on primitive values.
  • How many times: Each operation runs once, no loops or repeated traversals.
How Execution Grows With Input

Operations on primitive types happen instantly and do not grow with input size here.

Input Size (n)Approx. Operations
103
1003
10003

Pattern observation: The number of operations stays the same no matter how big the input is.

Final Time Complexity

Time Complexity: O(1)

This means the time to do these operations stays constant, no matter the input size.

Common Mistake

[X] Wrong: "String concatenation always takes longer as strings get bigger."

[OK] Correct: In JavaScript, simple concatenation of small strings is very fast and treated as a single step here; only very large strings or repeated concatenations in loops cause noticeable time growth.

Interview Connect

Understanding that primitive operations run in constant time helps you explain why some code is fast and others slow, a key skill in coding interviews.

Self-Check

"What if we replaced string concatenation with joining an array of 1000 strings? How would the time complexity change?"

Practice

(1/5)
1. Which of the following is NOT a primitive data type in JavaScript?
easy
A. object
B. boolean
C. string
D. number

Solution

  1. Step 1: Recall JavaScript primitive types

    JavaScript primitive types include string, number, boolean, undefined, null, symbol, and bigint.
  2. Step 2: Identify non-primitive types

    Object is not a primitive type; it is a complex data type used to store collections.
  3. Final Answer:

    object -> Option A
  4. Quick Check:

    Primitive types exclude objects [OK]
Hint: Remember: objects are NOT primitives, others are [OK]
Common Mistakes:
  • Confusing object with primitive types
  • Thinking null is an object
  • Mixing symbol with object
2. Which of the following is the correct way to declare a variable with a string primitive in JavaScript?
easy
A. let name = John;
B. let name = 'John';
C. let name = "John;
D. let name = `John;

Solution

  1. Step 1: Check string declaration syntax

    Strings must be enclosed in matching quotes: single ('') or double ("") or backticks (``).
  2. Step 2: Validate each option

    let name = 'John'; uses single quotes correctly. let name = John; lacks quotes. Options C and D have unclosed quotes.
  3. Final Answer:

    let name = 'John'; -> Option B
  4. Quick Check:

    Strings need matching quotes [OK]
Hint: Strings always need matching quotes around text [OK]
Common Mistakes:
  • Missing quotes around string
  • Using mismatched quotes
  • Forgetting semicolon (optional but good)
3. What will be the output of the following code?
console.log(typeof 123);
console.log(typeof 'hello');
console.log(typeof true);
medium
A. "number", "string", "boolean"
B. "Number", "String", "Boolean"
C. "num", "str", "bool"
D. "integer", "text", "bool"

Solution

  1. Step 1: Understand typeof operator

    typeof returns the type of a value as a lowercase string like "number", "string", or "boolean".
  2. Step 2: Check each console.log output

    typeof 123 is "number", typeof 'hello' is "string", typeof true is "boolean".
  3. Final Answer:

    "number", "string", "boolean" -> Option A
  4. Quick Check:

    typeof returns lowercase type names [OK]
Hint: typeof returns lowercase type names as strings [OK]
Common Mistakes:
  • Capitalizing type names
  • Using short forms like 'num'
  • Confusing typeof output with values
4. Find the error in this code snippet:
let value = null;
console.log(typeof value);
medium
A. null is not a valid value
B. typeof null returns 'null'
C. typeof null returns 'object' which is confusing
D. No error, code works fine

Solution

  1. Step 1: Understand typeof null behavior

    typeof null returns "object" due to a historical JavaScript bug.
  2. Step 2: Identify confusion

    This is confusing because null is a primitive but typeof shows "object".
  3. Final Answer:

    typeof null returns 'object' which is confusing -> Option C
  4. Quick Check:

    typeof null is 'object' (quirk) [OK]
Hint: Remember typeof null is 'object' due to JavaScript quirk [OK]
Common Mistakes:
  • Expecting 'null' from typeof
  • Thinking null is an object
  • Assuming code throws error
5. You want to store a very large integer number beyond the safe integer limit in JavaScript. Which primitive type should you use?
hard
A. number
B. symbol
C. string
D. bigint

Solution

  1. Step 1: Understand number limits in JavaScript

    The number type can safely represent integers only up to 2^53 - 1.
  2. Step 2: Identify type for large integers

    bigint is designed to store integers larger than the safe limit without losing precision.
  3. Final Answer:

    bigint -> Option D
  4. Quick Check:

    Use bigint for very large integers [OK]
Hint: Use bigint for integers larger than safe number limit [OK]
Common Mistakes:
  • Using number for very large integers
  • Using string instead of bigint
  • Confusing symbol with number types
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard