この動画はメンバー限定動画です
全ての講座が
月額990円で学び放題
JavaScript(に限らず、プログラミング言語は)計算が非常に得意です。
例えば、次のようなプログラムを作成すると、画面には「2」と表示され、実際に足し算が行われていることが分かります。
<p>1 + 1 =
<script>document.write(1+1);</script>
<p>
足し算の場合、「+」という記号を使います。算数で慣れ親しんだ記号ですが、プログラミング言語ではこれを「算術演算子」と呼びます。その他の計算に使われる算術演算子も見ていきましょう。
引き算
続いて引き算は「-」という記号を使います。
<p>10 - 3 =
<script>document.write(10-3);</script>
</p>
かけ算
そしてかけ算ですが、かけ算については日本人が慣れ親しんだ「×」という記号はJavaScriptでは利用できません。代わりに「*(アスタリスク)」という記号が、かけ算になります。
<p>10 * 5 =
<script>document.write(10*5);</script>
</p>
わり算
わり算も「÷」という記号の代わりに「/(スラッシュ)」が使われます。
<p>10 / 5 =
<script>document.write(10/5);</script>
</p>
このように、一部の記号が違うのが戸惑いますがさまざまな計算を行うことができます。
その他、次の記号も利用できます。
べき乗(**)
10の2乗などを計算できます
剰余(%)
わり算をしたときの余りを求めることができます。例えば、10 % 3は、あまりが1なので「1」が結果になります。
まとめると、次のような表になります。
+ | 足し算 |
– | 引き算 |
* | かけ算 |
/ | わり算 |
** | べき乗 |
% | 剰余算 |
カッコで優先順位を変更しよう
例えば次のプログラムを見てみましょう。
document.write(1+2*5);
この場合、「足し算・引き算よりもかけ算・わり算の方が優先」という算数のルールはそのまま適用されるため、2×5の計算が先に行われて、画面には11が表示されます。
もしこの時、足し算を先に行いたい場合はカッコで囲みます。
document.write((1+2)*5);
すると今度は、足し算が先に行われるため、1+2=3、3*5=15ということで15が画面に表示されるようになります。
小数の計算に注意
JavaScriptは、ほとんどの計算を正確に素早く行ってくれますが、唯一小数の計算が若干苦手です。例えば、次のプログラムを動作させてみましょう。
document.write(0.8 - 0.1);
結果は0.7になるはずですが、画面には「0.700…1」と誤った結果が表示されます。
これは「計算の誤差」で、JavaScriptの特徴というよりはコンピュータ自身が小数の扱いが苦手なために起こってしまう現象です。
コンピュータは数字を私たちが普段使っている10進数という数え方ではなく、2進数という数え方で扱っています。この変換の時に、若干の誤差が発生してしまうことがあるのです。これを解決する方法はあるのですが、ここではいったん「小数の扱いが苦手」ということだけ理解しておき、学習を進めていきましょう。