Kết quả của đoạn code sau là gì? Hãy giải thích tại sao?
Kết quả của đoạn code sau là gì? Hãy giải thích tại sao?
let num = 10;
const increaseNumber = () => num++;
const increasePassedNumber = number => number++;
const num1 = increaseNumber();
const num2 = increasePassedNumber(num1);
console.log(num1);
console.log(num2);
10
, 10
10
, 11
11
, 11
11
, 12
Phép toán ++
sẽ trả về trước giá trị của toán hạng, sau đó tăng giá trị của toán hạng lên. Giá trị của num1
là 10
, vì increaseNumber
sẽ trả về giá trị của num
, đang là 10
, và sau đó mới tăng giá trị của num
lên.
num2
cũng là 10
, vì chúng ta đưa num1
vào increasePassedNumber
. number
bằng 10
(tức giá trị của num1
). Cũng giống như trên, phép toán ++
sẽ trả về trước giá trị của toán hạng, sau đó tăng giá trị của toán hạng lên. Giá trị của number
là 10
, do đó num2
cũng sẽ là 10
.
middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào