課程
/前端開發
/JavaScript
/JavaScript進階篇
?實在是不理解 執行表達式之前+1 or -1? 什么是表達式。 還有我想的答案 abc =3 4 3? ab=3 4? 完完全全 和提交的答案不一樣。求大神具體幫我說一下,怎么個運算法。謝謝~
2019-01-27
源自:JavaScript進階篇 2-13
正在回答
我只能解釋一部分,抱歉,作為探討吧,第一個值,
理想是3,實際輸出了4,是因為,++操作符自動賦值
舉例說 a++ 同等于 a=a+1 等于 a+=1,
所以你在b = a++的時候就相當于 b= (a =a+1)或 b= (a +=1)括號是因為++的優先級
然后c 也就不用說了 因為現在的 a = 4,然后下一步
var a = 3相當于給 a 重新賦值,但第二局b = ++ a 又一次改變了 a 的值,
所以輸出了 a : 4? ?b: 4
至于++a,a++的區別,關系到更深層次,變量的進棧出棧賦值,這里我也不是很懂,如果是新手的話先不要太過深究,我是新手,若有錯誤,歡迎大佬指教
++a? eg: a=1 ,b=++a 那么 b=2;//先加為敬,相當于b = a; a = a + 1;
a++ eg: a=1 ,b=a++ 那么 b=1;//運行過一次才加,相當于a = a + 1; b = a;
這個自增/自減在循環里比較體現出
在js基礎里講述過變量可重復賦值
上述 var a=3; var b=a++; var c=a;
一開始a=3,b=a++的時候b=3,原因是a++運行過一次才加
b=a++這條運行后那么a=4了
在c=a時那么c=4;
所以輸出 4 3 4
?var a=3; var b=++a;
a又重新等于3了,b=++a,那么b=4,++a是先加,那么a也就執行過了等于4
所以輸出 4 4
別比比 提問者
qq_ChanZheng_0
精慕門9116487
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
2 回答a++和++a的區別
3 回答a++和++a的區別?
11 回答++a和a++ 有什么區別?
2 回答js中a+=b和a=a+b的區別
5 回答a++ 和++a的區別是什么
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2020-05-29
我只能解釋一部分,抱歉,作為探討吧,第一個值,
理想是3,實際輸出了4,是因為,++操作符自動賦值
舉例說 a++ 同等于 a=a+1 等于 a+=1,
所以你在b = a++的時候就相當于 b= (a =a+1)或 b= (a +=1)括號是因為++的優先級
然后c 也就不用說了 因為現在的 a = 4,然后下一步
var a = 3相當于給 a 重新賦值,但第二局b = ++ a 又一次改變了 a 的值,
所以輸出了 a : 4? ?b: 4
至于++a,a++的區別,關系到更深層次,變量的進棧出棧賦值,這里我也不是很懂,如果是新手的話先不要太過深究,我是新手,若有錯誤,歡迎大佬指教
2019-01-27
++a? eg: a=1 ,b=++a 那么 b=2;//先加為敬,相當于b = a; a = a + 1;
a++ eg: a=1 ,b=a++ 那么 b=1;//運行過一次才加,相當于a = a + 1; b = a;
這個自增/自減在循環里比較體現出
在js基礎里講述過變量可重復賦值
上述 var a=3; var b=a++; var c=a;
一開始a=3,b=a++的時候b=3,原因是a++運行過一次才加
b=a++這條運行后那么a=4了
在c=a時那么c=4;
所以輸出 4 3 4
?var a=3; var b=++a;
a又重新等于3了,b=++a,那么b=4,++a是先加,那么a也就執行過了等于4
所以輸出 4 4