JavaScript 初學者必學:簡化變數更新的方法 i++
更新日期: 2025 年 7 月 4 日
在撰寫程式時,一個非常常見的需求就是「更新」變數的數值。
所謂更新,就是根據變數目前的值,運算出一個新的值,再把這個新值存回變數中。
例如,我們可能希望某個計數器每次加 1、某個數值每次乘 2,或某個總和不斷累加新的數字。
這種更新變數值的動作,尤其在 迴圈 裡面出現得非常頻繁。
因為迴圈的特性就是重複執行相同或類似的程式碼,每次執行時,變數都會根據前一次的值作為基礎,計算出下一個新的值。
舉例來說,如果我們有一個變數 counter
,它在每次迴圈時要增加 1,我們會希望每次的值都是上一次的基礎上再加 1。
在寫程式時,養成善用簡化語法的習慣非常重要。
為什麼呢?因為:
1️⃣ 程式碼更簡潔易讀:當程式邏輯變得短小明確,不僅自己看得懂,將來回頭維護或讓別人閱讀程式時,也能更快理解每一行程式在做什麼。
2️⃣ 減少出錯機會:簡化語法能幫助我們減少重複輸入的機會,也就降低了打錯字或邏輯錯誤的風險。
3️⃣ 程式維護更輕鬆:當程式碼整齊有序,以後要修改或調整程式邏輯時,也會更加容易。
在接下來的文章裡,我們會循序漸進,帶你認識最基礎的變數更新寫法,並說明如何善用 JavaScript 提供的簡化語法,讓你的程式碼更有效率、更專業。
透過這些語法,你會發現原本需要好幾個字的運算式,其實都可以用簡單的寫法達成同樣的效果!
變數更新的基礎寫法
當我們在寫程式時,常常需要讓變數的數值隨著程式執行不斷變化。
這種變化通常是根據變數當前的數值,運算出一個新值,再把新值存回去覆蓋原來的值。
這就是我們所說的「變數更新」。變數更新在程式開發中非常重要,因為它是迴圈、計數、累加、計算總和、統計資料等功能的基礎。
一般寫法:完整表達更新邏輯
當我們想讓變數的值在每次執行時 累加 1,最直覺的做法就是直接用一個完整的運算式來表達它的變化,像這樣:
counter = counter + 1;
這一行程式碼的含義是:
1️⃣ 先取出變數 counter
目前的值
程式會先讀取變數 counter
原本存放的數值。
2️⃣ 將它與數字 1
相加
程式接著會計算 counter + 1
,得到一個新的數值。
3️⃣ 把這個新值再存回變數 counter
最後,程式會將這個相加後的結果覆蓋掉原本的值,也就是把新值儲存在 counter
裡。
例如,如果 counter
原本的值是 3,執行完 counter = counter + 1;
之後,counter
的值就會變成 4。
為什麼這樣的寫法被視為「基礎」?
這種寫法雖然有點冗長,但它的好處是清楚、易讀,能完整表現出變數更新的流程。
特別是當初學者第一次學習變數的運算邏輯時,這種寫法可以幫助大家理解 「變數更新是基於原本的值去計算新值」 這個概念。
很多時候,不只是加 1,我們還可能會用類似的語法做其他運算,例如:
total = total + price; // 將新價格加入總和
count = count + quantity; // 將某次數量加到總數
score = score + bonus; // 加上額外分數
這些例子都跟 counter = counter + 1;
是同樣的運作邏輯。
一個小提醒
雖然這種寫法簡單易懂,但當變數更新的動作在程式中非常頻繁時(例如在迴圈中重複執行數百、數千次),程式設計師通常會希望有更精簡的語法來達成相同目的。
這也是為什麼我們接下來會學習簡化語法的原因。
JavaScript 提供的簡化語法
當我們了解了基礎的變數更新寫法後,你會發現有些情況下,寫程式時會重複打很多一樣的變數名稱。
例如:
counter = counter + 1;
雖然這樣寫很清楚,但有點累贅,因為你要重複輸入變數名稱兩次。
久而久之,如果程式碼中這類更新操作很多,不僅增加打字量,也比較容易因手誤造成 bug(例如變數名稱拼錯)。
為了讓程式碼更簡潔,JavaScript 提供了簡化語法。
使用 +=
來簡化寫法
假設我們想讓變數 counter
的值增加 1,除了寫成 counter = counter + 1;
,還可以用以下的簡化語法:
counter += 1;
這一行程式碼的含義和 counter = counter + 1;
完全相同,但寫起來更短,程式碼也更俐落。
為什麼這樣的簡化語法更好?
- 可讀性更高:只看一眼就知道「讓變數加某個數值」。
- 減少打錯字風險:變數名稱只寫一次,不怕拼錯。
- 維護方便:當你要改變加的數字(例如從 1 改成 2),只需改一個地方。
類似簡化方式還可以應用在哪些運算?
除了 +=
,JavaScript 還提供了其他常用運算的簡化寫法,讓我們能快速更新變數值:
簡化寫法 | 等同完整寫法 | 說明 |
---|---|---|
counter -= 1; | counter = counter - 1; | 讓 counter 減 1 |
result *= 2; | result = result * 2; | 讓 result 變成 2 倍 |
value /= 3; | value = value / 3; | 讓 value 除以 3 |
num %= 5; | num = num % 5; | 讓 num 變成除以 5 的餘數 |
更多範例
score += 10; // 分數加 10
price -= 5; // 價格減 5
total *= 1.05; // 總價調漲 5%
average /= 2; // 平均值除以 2
這些簡化語法不只是為了減少打字,還讓程式的意圖一目了然。
在迴圈中應用簡化語法
簡化語法在迴圈中特別有用,因為迴圈經常需要更新計數器的數值,像是每次加 1、加 2 或乘以某個數字。
範例:印出 0 到 12 的偶數
假如我們想印出 0 到 12 之間的偶數,首先可以用基礎完整的語法來寫出程式邏輯。
基礎寫法
for (let number = 0; number <= 12; number = number + 2) {
console.log(number);
}
在這裡:
let number = 0
:這是變數的初始值,我們讓number
從 0 開始。number <= 12
:這是迴圈的條件判斷,當number
的值小於或等於 12 時,迴圈會持續執行。number = number + 2
:每次執行完迴圈後,讓number
的值在原來的基礎上增加 2。
這樣的寫法完整表達了變數如何更新:取出 number
的原始值,加上 2,再存回 number
裡。
縮寫語法
JavaScript 提供了更簡潔的寫法,可以把 number = number + 2
簡化成:
for (let number = 0; number <= 12; number += 2) {
console.log(number);
}
這裡的 number += 2
和 number = number + 2
的效果完全一樣,但語法更短、更好讀。
縮寫語法的好處:
- 減少打字量。
- 提升程式碼可讀性。
- 減少出錯機會(變數名稱只需寫一次)。
再進一步:更簡短的增減語法
當我們只需要讓變數加 1 或減 1 時,JavaScript 還提供了更短的寫法:
counter++;
等同於:
counter += 1;
或
counter = counter + 1;
同理,減 1 的寫法是:
counter--;
等同於:
counter -= 1;
或
counter = counter - 1;
這種寫法的特點
- 是專門用來表示變數值增加或減少 1 的快捷語法。
- 在 for 迴圈 或計數器邏輯中,幾乎隨處可見。
- 不只簡短,也被公認為最佳實務。
範例
for (let i = 0; i < 10; i++) {
console.log(i);
}
這裡的 i++
就是經典應用。
實務建議
✔ 如果數值變動是 1,就用 ++
或 --
。
✔ 如果變動是其他數字,用 +=
、-=
等簡化運算。
✔ 若變數值需要做乘法或除法等運算,也記得善用 *=
、/=
等語法。
善用簡化語法,能讓你的程式碼不僅正確,還能看起來專業又乾淨!
簡化語法的誕生由來
在程式語言的早期,例如 1950 年代的 Fortran 或 1960 年代的 C 語言,程式設計師經常需要手動撰寫完整的運算式,例如:
counter = counter + 1;
雖然這樣的寫法邏輯清楚,但當程式碼中需要頻繁進行加減或其他運算時,這種重複又冗長的語法容易讓程式碼顯得雜亂,也讓程式設計師疲於打字。
程式語言的設計者意識到這個問題後,開始提供更精簡的寫法,目的是:
✅ 減少開發者輸入的字數
✅ 提升程式碼可讀性
✅ 降低出錯風險(例如變數名稱打錯一次就會出 bug)
於是,像 +=
、-=
、*=
、/=
等簡化語法誕生了。
到了後來,C 語言更進一步設計了 ++
和 --
這種專門用於加減 1 的特殊符號,成為了程式語言中最常見也最經典的簡化運算子。
這樣的設計理念被沿用到許多後來誕生的程式語言,包含 JavaScript、Java、Python、C++、Go 等,都支援類似的簡化語法。
小結
在 JavaScript 中,更新變數數值是非常常見的操作,尤其在迴圈、計數器、數值計算等場景中。
善用簡化語法不僅能讓程式碼更短小精悍,也讓邏輯表達更直覺。建議初學者在日常練習中多加熟悉這些語法,讓你的程式碼越寫越漂亮、越寫越有效率!