我有一個很短的問題,但它真的讓我困惑。JavaScript中的x ++有什麼用途?
var y = 3, x = y++;
x的值是多少?
我想答案應該是4,但實際上它是3
任何人都可以解釋我的原因嗎?
我有一個很短的問題,但它真的讓我困惑。JavaScript中的x ++有什麼用途?
var y = 3, x = y++;
x的值是多少?
我想答案應該是4,但實際上它是3
任何人都可以解釋我的原因嗎?
在y++
,++
被稱爲「增量後運算符」。它首先使用值y
,然後遞增y
。在此,與「預增加運算符」++y
形成對比,其首先增加y
,然後返回增加的值。
y++
稱爲後增量 - 它遞增變量後返回原始值作爲表達式的值。所以
x = y++;
等同於:
temp = y;
y = y + 1;
x = temp;
如果你想返回新值,你應該使用++y
。這被稱爲預先增量,因爲它在返回之前遞增變量。聲明
x = ++y;
等同於:
y = y + 1;
x = y;
的++
運營商做了兩兩件事。它遞增一個變量並返回變量的值。
如果以前綴爲例,即++y
,它將在增量後返回值(在您的情況下爲4)。如果你使用後綴(y++
),它會返回增量前的值(在你的情況下爲3.請注意,y
的值現在仍然是4,但是在y遞增之前x被賦值)。
var y = 3;
x = ++y;
console.log(x);
這將導致4
這就是所謂的 「預增」。它返回增加的值。
y++
是後增量,它返回原始值。
x = y ++在這裏,該值被分配,然後遞增。這個x = ++ y將會增加並賦值。 – 2014-09-25 05:44:53
當你做x = y ++;首先它會將y的值賦給x,然後它會增加。 – 2014-09-25 05:45:09