Objects: Objects are passed by reference

Objects are always passed by reference.

If you assign a variable the same value of another, if it’s a primitive type like a number or a string, they are passed by value:

Take this example:

let age = 36
let newAge = age

newAge = 37

console.log(age) //36

With primitive types, the copy is an entirely new entity. With objects instead, you copy a reference to the same object:

const car = {
  color: "blue",
}

const anotherCar = car
anotherCar.color = "yellow"
car.color //'yellow'

Remember that also arrays and functions are objects, so they are passed by reference, too.

Lessons in this unit:

0: Introduction
1: How to create an object
2: Object properties
3: ▶︎ Objects are passed by reference
4: Methods
5: Passing objects as function arguments or returning objects from a function
6: Accessing a property of the object inside a method using `this`
7: Object destructuring
8: Cloning objects
9: Sort an array of objects by a property value
10: Merging two objects into one
11: apply, call, bind