javascript中先加加和后加加區(qū)別 ++a和a++區(qū)別解析
更新時間:2023年09月12日 11:59:15 作者:upward_tomato
從學習 javascript 開始,就對 先加加 和 后加加 模糊不清,時至今日,再來學習一下,這篇文章主要介紹了javascript中先加加和后加加區(qū)別++a和a++區(qū)別解析,需要的朋友可以參考下
javascript中先加加和后加加區(qū)別 ++a,a++
start
請問下列代碼會輸出什么內容?
var a = 1 var b = 1 var c = 1 console.log(a++) console.log(++b) console.log((c += 1))
思考
從學習 javascript 開始,就對 先加加
和 后加加
模糊不清,時至今日,再來學習一下。
- 在使用變量時,當
++
在變量后面的時候,會先返回變量再做++
處理。 - 先加加,與上一條邏輯相反(先計算,再返回)。
c += 1
可以理解為c = c + 1
先減減
和后減減
,和上述同理
var a = 1 var b = 1 var c = 1 console.log(a++) // 1 console.log(++b) // 2 console.log((c += 1)) // 2
補充:在JavaScript中,++在前和++在后有什么區(qū)別
一、 ++可以與輸出語句寫在一起,++寫在變量前和寫在變量后不是一個意思 ++ i 和 i ++ 區(qū)別在于運算順序和結合方向。 在JavaScript中有兩種自加運算,其運算符均為 ++,功能為將運算符自加 1。 其中: ++ VAR 被稱為前自加,其后面的變量執(zhí)行自加操作,其運算為,先執(zhí)行自加操作,再引用VAR值。 VAR ++ 被稱為后自加,其前面的變量執(zhí)行自加操作,其運算為,先引用VAR值,再進行自加操作。 如果自加語句獨立成為一個單獨的語句,那么前后自加是完全相同的。 比如單獨的一行 a ++; 和 ++ a; 是一樣的。 1 再比如,常見的for循環(huán): for(i = 0; i < 100; i ++) for(i = 0; i < 100; ++i) 1 2 這里用到的 ++ i 和 i ++ 是完全相同的,沒有區(qū)別。 二、 當運算變量本身值會在自加語句中,同時執(zhí)行其它操作,二者就有區(qū)別了。 比如 var i = 0; while( i ++ < 10); 1 2 i會先和10比較大小,然后執(zhí)行自加。這樣當i=10時,退出循環(huán),再執(zhí)行一次自加,退出后i值為11。 而如果寫成 while(++ i < 10); 1 是先執(zhí)行自加,然后再與10比較。這樣在i=9時,先自加,得到i=10,然后比較就會退出循環(huán)了。這種情況下,退出后i值為10。 再舉一個例子。 var a, i = 10; a = i ++; //這里i要先賦值,再自加。語句執(zhí)行后a=10, i = 11; 1 2 而如果寫成: var a, i = 10; a = ++i; //這里i要先自加,再賦值。語句執(zhí)行后a=11, i = 11;
到此這篇關于javascript中先加加和后加加區(qū)別 ++a,a++的文章就介紹到這了,更多相關js ++a和a++區(qū)別內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
javascript通過class來獲取元素實現(xiàn)代碼
javascript獲取元素有很多的方法,本文簡單的介紹下通過class獲取元素的實現(xiàn)代碼,感興趣的朋友可以參考下,希望本文知識點可以幫助到你2013-02-02