Reference Passing

Reference passing allows variable to be modified by the function it's passed to.

Passing By Value

Primitive types (like numbers and strings) are passed by value.

Let's look at the following example:

Output:

num is incremented by 1 in theincrementValue function. Since it's passed by value it remains 0 outside the incrementValue function.

Passing By Reference

Arrays and objects are always passed by reference.

Output: