javascript中先加加和后加加區(qū)別 ++a和a++區(qū)別解析
javascript中先加加和后加加區(qū)別 ++a,a++
start
請(qǐng)問(wèn)下列代碼會(huì)輸出什么內(nèi)容?
var a = 1 var b = 1 var c = 1 console.log(a++) console.log(++b) console.log((c += 1))
思考
從學(xué)習(xí) javascript 開(kāi)始,就對(duì) 先加加
和 后加加
模糊不清,時(shí)至今日,再來(lái)學(xué)習(xí)一下。
- 在使用變量時(shí),當(dāng)
++
在變量后面的時(shí)候,會(huì)先返回變量再做++
處理。 - 先加加,與上一條邏輯相反(先計(jì)算,再返回)。
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
補(bǔ)充:在JavaScript中,++在前和++在后有什么區(qū)別
一、 ++可以與輸出語(yǔ)句寫在一起,++寫在變量前和寫在變量后不是一個(gè)意思 ++ i 和 i ++ 區(qū)別在于運(yùn)算順序和結(jié)合方向。 在JavaScript中有兩種自加運(yùn)算,其運(yùn)算符均為 ++,功能為將運(yùn)算符自加 1。 其中: ++ VAR 被稱為前自加,其后面的變量執(zhí)行自加操作,其運(yùn)算為,先執(zhí)行自加操作,再引用VAR值。 VAR ++ 被稱為后自加,其前面的變量執(zhí)行自加操作,其運(yùn)算為,先引用VAR值,再進(jìn)行自加操作。 如果自加語(yǔ)句獨(dú)立成為一個(gè)單獨(dú)的語(yǔ)句,那么前后自加是完全相同的。 比如單獨(dú)的一行 a ++; 和 ++ a; 是一樣的。 1 再比如,常見(jiàn)的for循環(huán): for(i = 0; i < 100; i ++) for(i = 0; i < 100; ++i) 1 2 這里用到的 ++ i 和 i ++ 是完全相同的,沒(méi)有區(qū)別。 二、 當(dāng)運(yùn)算變量本身值會(huì)在自加語(yǔ)句中,同時(shí)執(zhí)行其它操作,二者就有區(qū)別了。 比如 var i = 0; while( i ++ < 10); 1 2 i會(huì)先和10比較大小,然后執(zhí)行自加。這樣當(dāng)i=10時(shí),退出循環(huán),再執(zhí)行一次自加,退出后i值為11。 而如果寫成 while(++ i < 10); 1 是先執(zhí)行自加,然后再與10比較。這樣在i=9時(shí),先自加,得到i=10,然后比較就會(huì)退出循環(huán)了。這種情況下,退出后i值為10。 再舉一個(gè)例子。 var a, i = 10; a = i ++; //這里i要先賦值,再自加。語(yǔ)句執(zhí)行后a=10, i = 11; 1 2 而如果寫成: var a, i = 10; a = ++i; //這里i要先自加,再賦值。語(yǔ)句執(zhí)行后a=11, i = 11;
到此這篇關(guān)于javascript中先加加和后加加區(qū)別 ++a,a++的文章就介紹到這了,更多相關(guān)js ++a和a++區(qū)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
javascript通過(guò)class來(lái)獲取元素實(shí)現(xiàn)代碼
javascript獲取元素有很多的方法,本文簡(jiǎn)單的介紹下通過(guò)class獲取元素的實(shí)現(xiàn)代碼,感興趣的朋友可以參考下,希望本文知識(shí)點(diǎn)可以幫助到你2013-02-02JS一維數(shù)組轉(zhuǎn)多維數(shù)組樹(shù)的方法
這篇文章主要介紹了JS一維數(shù)組轉(zhuǎn)多維數(shù)組樹(shù)的方法,文章通過(guò)代碼示例給大家講解的非常詳細(xì),?對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-06-06JavaScript對(duì)URL進(jìn)行編碼和解碼的三種方式
本文詳細(xì)介紹了為何在URL中需要編碼,列舉了需要編碼的字符,以及JavaScript中的escape,encodeURI,encodeURIComponent三種編碼方式及其用途和注意事項(xiàng),需要的朋友可以參考下2025-04-04JavaScript 事件流、事件處理程序及事件對(duì)象總結(jié)
JS與HTML之間的交互通過(guò)事件實(shí)現(xiàn),事件就是文檔或?yàn)g覽器窗口中發(fā)生的一些特定的交互瞬間,可以使用(或處理程序)來(lái)預(yù)定事件,以便事件發(fā)生時(shí)執(zhí)行相應(yīng)的代碼,本文將介紹JS事件相關(guān)的基礎(chǔ)知識(shí),2017-04-04用原生js做個(gè)簡(jiǎn)單的滑動(dòng)效果的回到頂部
很多網(wǎng)頁(yè)在下方都會(huì)放置一個(gè)“返回頂部”按鈕,這樣可以幫助訪客重新找到導(dǎo)航或者重溫一遍廣告,于是將返回頂部功能做成了滑動(dòng)效果2014-10-10