課程
/前端開發
/JavaScript
/JavaScript進階篇
++a和a++ 有什么區別?
2016-04-12
源自:JavaScript進階篇 2-13
正在回答
可以換個思路,不考慮兩個變量,但看值。
var?a??=?5; alert(a++);//5 alert(a);//6 /* ????a?值自增1; ????(a++)?值與自增?1?前的?a?值?5?相等; */
var??a??=?5; alert(++a);//6; alert(a)?;//6; /* ????a?值自增1; ????(++a)值與自增?1?后的?a?值?6?相等; */
var a ?= 5;
那么,alert(a++);彈出框內值為 5;也就是說 (a++ )的值為5 ,和此前的 a 值相等。
但是,alert(a); 彈出框內值為6;a 值在原始 a 值的基礎上自增 1;
var ?a ?= 5;
alert(++a);彈出 6;
alert(a) ;彈出值也為6;
相應的 (++a)的值為6,和自增 1 后的 a 值相等。
卡蘭尼克
var a1,a2,b,c;
a1 = 5;
a2 = 5;
b = a1++;
c = ++a2;
則:a1 = 6 ;a2 = 6;
但:b = 5 ; c = 6;
-------------------------
var ?x = 5;
var ?y = 5;
x = x++;
y = ++y ;
則: x = 5 ; y = 6 ;
little_star 提問者
鬼擎火 回復 little_star 提問者
鬼擎火 回復 鬼擎火
little_star 提問者 回復 鬼擎火
秋山君 回復 鬼擎火
阿皎就是煢兔丶 回復 秋山君
for(var?i=0;i<5;){ ????document.write(++i) }
這里輸出的是1,2,3,4,5,因為++i是先加1再賦值
for(var?i=0;i<5;){ ????document.write(i++) }
這里輸出的是0,1,2,3,4,因為i++是先賦值再加1
溫水里的小白 回復 little_star 提問者
慕田峪9273182 回復 溫水里的小白
運算時,++a先完成賦值并立即參與到運算,而如果是a++,就以a的初始值為準參加運算,然后a在進行賦值,a=a++;
++a先自增后取值,a++先取值后自增;前提是在分號之前
a++是先處理a,之后a自增,++a是,a先自增,然后處理a
a++ 和 ++a的相同點都是給a+1,不同點是a++是先參加程序的運行再+1,而++a則是先+1再參加程序的運行
++a 先加1在運算, a++ 運算后再自加1
一般是相等的 ?當賦值時有所不同 ?++a 先運算后賦值 ? ?a++先賦值后運算
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
4 回答var a=function(){}和function a(){}有什么區別
5 回答a++ 和++a的區別是什么
2 回答++a 和 a++de 區別?
2 回答a++和++a的區別
3 回答a++和++a的區別?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-04-13
可以換個思路,不考慮兩個變量,但看值。
2016-04-13
可以換個思路,不考慮兩個變量,但看值。
var a ?= 5;
那么,alert(a++);彈出框內值為 5;也就是說 (a++ )的值為5 ,和此前的 a 值相等。
但是,alert(a); 彈出框內值為6;a 值在原始 a 值的基礎上自增 1;
var ?a ?= 5;
alert(++a);彈出 6;
alert(a) ;彈出值也為6;
相應的 (++a)的值為6,和自增 1 后的 a 值相等。
2016-04-12
var a1,a2,b,c;
a1 = 5;
a2 = 5;
b = a1++;
c = ++a2;
則:a1 = 6 ;a2 = 6;
但:b = 5 ; c = 6;
-------------------------
var ?x = 5;
var ?y = 5;
x = x++;
y = ++y ;
則: x = 5 ; y = 6 ;
2016-04-12
這里輸出的是1,2,3,4,5,因為++i是先加1再賦值
這里輸出的是0,1,2,3,4,因為i++是先賦值再加1
2016-04-12
運算時,++a先完成賦值并立即參與到運算,而如果是a++,就以a的初始值為準參加運算,然后a在進行賦值,a=a++;
2016-04-12
++a先自增后取值,a++先取值后自增;前提是在分號之前
2016-04-12
a++是先處理a,之后a自增,++a是,a先自增,然后處理a
2016-04-12
a++ 和 ++a的相同點都是給a+1,不同點是a++是先參加程序的運行再+1,而++a則是先+1再參加程序的運行
2016-04-12
++a 先加1在運算, a++ 運算后再自加1
2016-04-12
一般是相等的 ?當賦值時有所不同 ?++a 先運算后賦值 ? ?a++先賦值后運算