Course Content
The Complete Frontend Developer Roadmap
The Complete Frontend Developer Roadmap
0/1
Lesson 1:- What is JavaScripts
Introduction to JavaScripts
0/1
Lesson 2:- JavaScript Course for Beginners – Your First Step to Web Development
JavaScript Course for Beginners
0/1
Lesson 3:-Object-oriented Programming in JavaScript: Made Super Simple
Object-oriented Programming in JavaScript
0/1
Lesson 4:- JavaScript Arrays
JavaScript Arrays
0/1
Less0n 5:- JavaScript Functions
JavaScript Functions
0/1
Lesson 6:- JavaScript Strings
JavaScript Strings
0/1
Lesson 7:- JavaScript if else
JavaScript if else
0/1
Lesson 8:- JavaScript Loops
JavaScript Loops
0/1
Lessons 9:- JavaScript Factory Functions
JavaScript Factory Functions
0/1
Lesson 10:- JavaScript Constructor Functions
JavaScript Constructor Functions
0/1
Lesson 11:- JavaScript Getters and Setters
JavaScript Getters and Setters
0/1
Lesson 12:- JavaScript Value vs Reference Types
JavaScript Value vs Reference Types
0/1
Lesson 13:- JavaScript Scope (Local vs Global)
JavaScript Scope (Local vs Global)
0/1
Lesson 14:- JavaScript Let vs Var vs Constant
JavaScript Let vs Var vs Constant
0/1
Lesson 15:- JavaScript Cloning an Object
JavaScript Cloning an Object
0/1
Lesson 16:- JavaScript this Keyword
JavaScript this Keyword
0/1
Lesson 17:- JavaScript Template Literals
JavaScript Template Literals
0/1
Lesson 18:- JavaScript Array Filter
JavaScript Array Filter
0/1
Lesson 19:- JavaScript Array Map
JavaScript Array Map
0/1
Lesson 20:- JavaScript Array Reduce
JavaScript Array Reduce
0/1
Extra Lesson 1:-Learn Modern JavaScript in 1 Hour
Learn Modern JavaScript in 1 Hour
0/1
Extra Lesson 2:- JavaScript Unit Testing Tutorial for Beginners
JavaScript Unit Testing Tutorial for Beginners
0/1
Extra Lesson 3:- React Testing for Beginners
React Testing for Beginners
0/1
9 Reasons People Hate JavaScript
9 Reasons People Hate JavaScript
0/1
JavaScripts for Beginners
About Lesson

JavaScript Value vs. Reference Types

In JavaScript, data types are broadly classified into two categories:  

  1. Primitive (Value) Types:

    • Store the actual value directly.  
    • Examples:
      • Number (e.g., 10, 3.14)
      • String (e.g., “hello”, ‘world’)
      • Boolean (e.g., true, false)
      • null (represents the intentional absence of a value)
      • undefined (represents a variable that has been declared but has no value assigned)
      • Symbol (unique and immutable values)
  2. Reference Types:

    • Store a reference (memory address) to the actual value.  
    • Examples:
      • Object (e.g., { name: "John", age: 30 })
      • Array (e.g., [1, 2, 3])
      • Function

Key Differences:

  • Assignment:

    • Value Types: When assigned to a new variable, a new copy of the value is created. Changes to the new variable do not affect the original.
    • Reference Types: When assigned to a new variable, both variables point to the same memory location. Changes made to one variable will also affect the other.  
  • Example:

    JavaScript

     
    // Value Type (Number)
    let num1 = 10;
    let num2 = num1; 
    num2 = 20; 
    console.log(num1); // Output: 10
    
    // Reference Type (Array)
    let arr1 = [1, 2, 3];
    let arr2 = arr1; 
    arr2.push(4); 
    console.log(arr1); // Output: [1, 2, 3, 4] 
    

Understanding this distinction is crucial for writing correct and predictable JavaScript code, especially when dealing with object manipulation and function arguments.