「定数/変数と演算」をテーマに、基礎/中級/上級(応用)の3レベルで、各レベル5問ずつ、合計15問のオリジナル練習問題と解答・解説を作成しました。
基礎レベル(5問)
問題1
次のコードで、コンソールに出力される値は何ですか?
const a = 10;
let b = 5;
console.log(a + b);
JavaScript解答と解説
- 解答:
15 - 解説:
aは定数、bは変数です。+演算子は数値の足し算を行うので、10 + 5 = 15。
問題2
次のコードでエラーが発生するのはどの行ですか?
const x = 7;
x = 10;
JavaScript解答と解説
- 解答:2行目
- 解説:
constで宣言した変数は再代入できません。x = 10;はエラーになります。
問題3
次のコードで出力される値を答えなさい。
let num = 8;
num = num * 2;
console.log(num);
JavaScript解答と解説
- 解答:
16 - 解説:
numに 8 を代入し、num * 2を再代入しているので、8 × 2 = 16 になります。
問題4
次のコードの出力は?
let a = 3;
let b = 4;
console.log(a ** b);
JavaScript解答と解説
- 解答:
81 - 解説:
**はべき乗演算子です。3 の 4 乗 = 3 × 3 × 3 × 3 = 81。
問題5
次のコードで、console.log(result); の出力は?
let result = 10 % 3;
console.log(result);
JavaScript解答と解説
- 解答:
1 - 解説:
%は剰余(余り)を求める演算子です。10 ÷ 3 の余りは 1 です。
中級レベル(5問)
問題1
次のコードの出力は?
let x = 5;
let y = 2;
console.log(x / y);
JavaScript解答と解説
- 解答:
2.5 - 解説:
/は割り算です。5 ÷ 2 = 2.5。
問題2
次のコードを完成させて、total が 30 になるようにしてください。
let a = 10;
let b = 5;
let total = /* ここに式を書く */;
console.log(total);
JavaScript解答例と解説
let total = a * b; // 10 × 5 = 50 は間違い
JavaScriptあ、待って! total が 30 になるには?
- 10 + 5 × 4 = 30 などの式にできます。正しい例:
let total = a + b * 4; // 10 + 5*4 = 30
JavaScript- 解説:演算子の優先順位に注意。
*が先に計算され、次に+が計算されます。
問題3
次のコードの出力は?
let x = 7;
x += 3;
console.log(x);
JavaScript解答と解説
- 解答:
10 - 解説:
+=は「右辺を加算して代入」の意味。x = 7 + 3 = 10。
問題4
次のコードの出力は?
let a = 2;
let b = 3;
let c = 4;
console.log(a + b * c);
JavaScript解答と解説
- 解答:
14 - 解説:演算子の優先順位で、
*が先に計算されるので、3*4=12、次に a + 12 = 2 + 12 = 14。
問題5
次のコードで console.log(result); の出力は?
let a = 10;
let b = 3;
let result = Math.floor(a / b);
console.log(result);
JavaScript解答と解説
- 解答:
3 - 解説:
Math.floor()は小数点以下を切り捨てます。10 ÷ 3 = 3.333… → 3。
上級/応用レベル(5問)
問題1
次のコードを完成させて、sum が 1〜100 までの合計になるようにしてください。
let sum = 0;
for (let i = 1; i <= 100; i++) {
// ここにコード
}
console.log(sum);
JavaScript解答例と解説
sum += i;
- 解説:
sum += i;は sum = sum + i と同じ意味で、1から100まで順に足していきます。
問題2
次のコードで average が正しく計算されるように修正してください。
let scores = [80, 90, 70, 60];
let sum = 0;
for (let i = 0; i < scores.length; i++) {
sum = scores[i]; // 修正必要
}
let average = sum / scores.length;
console.log(average);
JavaScript解答例と解説
sum += scores[i];
JavaScript- 解説:
sum = scores[i];では最後の値だけになってしまうので、累積して加算する必要があります。
問題3
次のコードの出力は?
let a = 5;
let b = "5";
console.log(a + b);
console.log(a * b);
JavaScript解答と解説
- 解答:
"55"
25
- 解説:
+は文字列結合の優先があるため、数値と文字列の結合は文字列になります。*は数値として計算されるため、5 * 5 = 25。
問題4
次のコードで、変数 result が偶数か奇数かを判定してください。
let num = 17;
let result;
// 条件式をここに書く
console.log(result); // "偶数" または "奇数"
JavaScript解答例と解説
result = (num % 2 === 0) ? "偶数" : "奇数";
JavaScript- 解説:
%演算子で余りをチェックし、0 なら偶数、それ以外は奇数。
問題5
次のコードを完成させて、1〜10の合計のうち偶数だけを足すようにしてください。
let sum = 0;
for (let i = 1; i <= 10; i++) {
if (/* 条件式 */) {
sum += i;
}
}
console.log(sum);
JavaScript解答例と解説
if (i % 2 === 0) {
sum += i;
}
JavaScript- 解説:
i % 2 === 0で偶数判定、偶数のみ合計に加算しています。1+2+…+10 の偶数は 2+4+6+8+10 = 30。

