Я немного запутался с выводом. Пробовал в Javascript
var x = 1; x = x++; console.log(x); //Its output is 1
Я думал, что это будет 2. потому что я делаю печать после постинкремента. Какие-либо взгляды на это?
Это правильно. Сначала идет присвоение, затем увеличение. Для сравнения:
var x = 1 var y = 1 x = x++ y = ++y console.log(x, y)
Порядок, в котором выполняется x = x++, выглядит следующим образом:
x = x++
x++
Вышеуказанные правила описаны здесь . Правила указывают, что x увеличивается до назначения, а не после.
x