+ 1
Why a is equal to 11 & b is equal to 10?
Hello, I'm completely new to JavaScript. Recently I was studying increment operators. And I'm unable to understand why the following code's variable named "a" is equal to 10! Please help me to understand this.. //Code// var a; var b; a = 10; b = a++; console.log("a = " + a); console.log("b = " + b);
3 Answers
+ 3
Thanks for a nice question. For increment operator study your need to focus what is returned. That can solve your problem. It is the value of your variable which holds the increment operator.
x++: If used postfix, with operator after operand (for example, x++), the increment operator increments and returns the value before incrementing.
Postfix increment:
let x = 3;
y = x++;
// y = 3; returns the value before incrementing
// x = 4; the increment operator increments
++x: If used prefix, with the operator before operand (for example, ++x), the increment operator increments and returns the value after incrementing.
Prefix increment
let a = 2;
b = ++a;
// a = 3; the increment operator increments
// b = 3; returns the value after incrementing
Your Problem: Hope you realize that why your b has remained 10 and a is incremented..
+ 3
Hi I am steve, There is a post incrementing in setting var b.
which will assign a and than add 1 to it.
It would work if
//Code//
var a;
var b;
a = 10;
b = ++a;
console.log("a = " + a);
console.log("b = " + b);
+ 2
Abir Sheikh lets see your code
a = 10 ;
b =a++;
Lets see var b.
b = a++; means here increment operator is used but it is post increment so the value of a =10 will assign to b. So the value of
b = 10.
return to var a, is post increment so the value of a is increase by 1.
So. The value of a = 11.
I hope you understand