pre & post operands in javascript

Greetings,

I want to make sure I understand the different results between the three code examples included of pre & post increment operands.

Example A:
i = 1;
j = ++i;

Example B:
i = 1;
j = i++;

Example A sets both i and j to 2 whereas example B sets i to 2 and j to 1.  
I want to make sure why j equals 1 in example B: I believe it is because the increment operand is post which means this code:

j = i++;

Is read like this:

j equals i which equals 1 (j = i)
Increment i so it equals 2 (i++)

Am I correct in my reading of the code from example B?  If I am correct, then I would like to apply this logic to the following code:

Example C:
var i = 1;
var j = ++i;  // pre-increment:  j equals 2; i equals 2
var k = i++;  // post-increment: k equals 2; i equals 3

Based on the code above, does k equal 2 because i was previously incremented in var j above it and the new value of i (2) is carried over to the code: var k = i++?  
LVL 1
max7Asked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
wdosanjosConnect With a Mentor Commented:
You are correct.  ++i means increment i then use the result's value.  i++ means use i's value then increment i.
0
 
Anil GolamariConnect With a Mentor Commented:
Yes you can use above code to get output as i =3, j= 2, k =2.
0
 
max7Author Commented:
Thanks to you both for the help!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.