9 / 2733%

LESSON 09 ・ 変数

再代入

値を上書きする

let a = 2;
a = 3;
console.log(a);

変数の値はあとから変更できます。最初にa = 22を保存し、次にa = 33に上書きしています。そのため、console.log(a)すると3が出力されます。

今の値を使って更新する

let age = 12;
console.log(age);

age = age + 1;
console.log(age);

変数に格納された値を使って計算し、結果を同じ変数に代入することもできます。ageは年齢を表す変数ですが、誕生日が来て年齢を1増やす処理は、age = age + 1というように書けます。

age = age + 1という式は、数学では=が成り立たず不正な式ですが、プログラミング言語では=は代入を表すので、「=の右側の値を、=の左側の変数に代入する」という意味になります。age ← age + 1age + 1の結果をageに入れる)のように考えると分かりやすいかもしれません。

省略して書く

let age = 12;
console.log(age);

age += 1;
console.log(age);

age = age + 1などのコードはよく書くので、省略形が用意されています。age += 1と書くと、age = age + 1という意味になります。

PRACTICE

演習問題

コードを自分で書いて実行してから、答えと解説を確認しましょう。

問題1

変数aに最初は2を代入し、その後5を再代入してから、aを表示してください。

答えと解説を見る

模範解答

let a = 2;
a = 5;
console.log(a);

後から代入した5で元の値が上書きされるため、5が表示されます。

問題2

変数age14を代入し、今の値を使って1増やしてから表示してください。+=を使って書いてみましょう。

答えと解説を見る

模範解答

let age = 14;
age += 1;
console.log(age);

age += 1age = age + 1と同じ意味です。更新後の15が表示されます。

問題3

在庫数を表す変数stock20で始めます。商品が8個入荷したので増やし、その後5個売れたので減らして、最後の在庫数を表示してください。

答えと解説を見る

模範解答

let stock = 20;
stock += 8;
stock = stock - 5;
console.log(stock);

今の在庫数を使って、入荷分を足し、販売分を引いています。最後の在庫数は23です。