102 lines
1.5 KiB
Markdown
102 lines
1.5 KiB
Markdown
|
---
|
||
|
id: 56533eb9ac21ba0edf2244af
|
||
|
title: 複合賦值之 +=
|
||
|
challengeType: 1
|
||
|
videoUrl: 'https://scrimba.com/c/cDR6LCb'
|
||
|
forumTopicId: 16661
|
||
|
dashedName: compound-assignment-with-augmented-addition
|
||
|
---
|
||
|
|
||
|
# --description--
|
||
|
|
||
|
在編程中,通常通過賦值來修改變量的內容。 記住,賦值時 JavaScript 會先計算等號右邊的內容,所以我們可以寫這樣的語句:
|
||
|
|
||
|
```js
|
||
|
myVar = myVar + 5;
|
||
|
```
|
||
|
|
||
|
給 `myVar` 加上 `5`。 這是最常見的運算賦值語句,即先運算、再賦值。還有一類操作符是一步到位,既做運算也賦值的。
|
||
|
|
||
|
其中一種就是 `+=` 運算符。
|
||
|
|
||
|
```js
|
||
|
var myVar = 1;
|
||
|
myVar += 5;
|
||
|
console.log(myVar);
|
||
|
```
|
||
|
|
||
|
控制檯將會顯示 `6`。
|
||
|
|
||
|
# --instructions--
|
||
|
|
||
|
使用 `+=` 操作符對 `a`、`b` 和 `c` 賦值。
|
||
|
|
||
|
# --hints--
|
||
|
|
||
|
`a` 應該等於 `15`。
|
||
|
|
||
|
```js
|
||
|
assert(a === 15);
|
||
|
```
|
||
|
|
||
|
`b` 應該等於 `26`。
|
||
|
|
||
|
```js
|
||
|
assert(b === 26);
|
||
|
```
|
||
|
|
||
|
`c` 應該等於 `19`。
|
||
|
|
||
|
```js
|
||
|
assert(c === 19);
|
||
|
```
|
||
|
|
||
|
應該對每個變量使用 `+=` 操作符。
|
||
|
|
||
|
```js
|
||
|
assert(code.match(/\+=/g).length === 3);
|
||
|
```
|
||
|
|
||
|
不要修改註釋上面的代碼。
|
||
|
|
||
|
```js
|
||
|
assert(
|
||
|
/var a = 3;/.test(code) &&
|
||
|
/var b = 17;/.test(code) &&
|
||
|
/var c = 12;/.test(code)
|
||
|
);
|
||
|
```
|
||
|
|
||
|
# --seed--
|
||
|
|
||
|
## --after-user-code--
|
||
|
|
||
|
```js
|
||
|
(function(a,b,c){ return "a = " + a + ", b = " + b + ", c = " + c; })(a,b,c);
|
||
|
```
|
||
|
|
||
|
## --seed-contents--
|
||
|
|
||
|
```js
|
||
|
var a = 3;
|
||
|
var b = 17;
|
||
|
var c = 12;
|
||
|
|
||
|
// Only change code below this line
|
||
|
a = a + 12;
|
||
|
b = 9 + b;
|
||
|
c = c + 7;
|
||
|
```
|
||
|
|
||
|
# --solutions--
|
||
|
|
||
|
```js
|
||
|
var a = 3;
|
||
|
var b = 17;
|
||
|
var c = 12;
|
||
|
|
||
|
a += 12;
|
||
|
b += 9;
|
||
|
c += 7;
|
||
|
```
|