算術演算子を使って計算をする
JavaScript における演算子についてご紹介します。ホームページやブログなどのウェブサイトで、JavaScript を使って演算を行うことができます。なかでも代表的なものが、この算術演算子で、下表のようなものがあります。
| + | 加算 | 2つの数値の和を求めます。(足し算) |
| - | 減算 | 2つの数値の差を求めます。(引き算) |
| * | 乗算 | 2つの数値の積を求めます。(掛け算) |
| / | 除算 | 2つの数値の除算を行います。(割り算) |
| % | 余剰 | 2つの数値の除算を行い、その余りを求めます。 |
| ++ | インクリメント | 変数の値を 1 増やします。a++ は、 a = a + 1 という意味になります。 |
| -- | デクリメント | 変数の値を 1 減らします。a-- は、 a = a - 1 という意味になります。 |
サンプルです。
<SCRIPT LANGUAGE="JavaScript">
<!--
</SCRIPT>
<!--
document.write("16 + 5 = ", 16 + 5 ,"<br>" );
document.write("16 - 5 = ", 16 - 5 ,"<br>" );
document.write("16 * 5 = ", 16 * 5 ,"<br>" );
document.write("16 / 5 = ", 16 / 5 ,"<br>" );
document.write("16 % 5 = ", 16 % 5 ,"<br>" );
a = 16 ; a++ ;
document.write("a = 16 のとき a++ は、 ", a++ ,"<br>" );
a = 16 ; a-- ;
document.write("a = 16 のとき a-- は、 ", a-- );
//-->document.write("16 - 5 = ", 16 - 5 ,"<br>" );
document.write("16 * 5 = ", 16 * 5 ,"<br>" );
document.write("16 / 5 = ", 16 / 5 ,"<br>" );
document.write("16 % 5 = ", 16 % 5 ,"<br>" );
a = 16 ; a++ ;
document.write("a = 16 のとき a++ は、 ", a++ ,"<br>" );
a = 16 ; a-- ;
document.write("a = 16 のとき a-- は、 ", a-- );
</SCRIPT>
このソースを表示させると、次のようになります。
上記のようなサンプルは、1度表示したらそれっきりですので わざわざ JavaScript を用いて表示するまでもないような内容です。一般的には、フォームなどを使って入力された数値の計算などに用いられます。
演算子のラジオボタンにチェックを付けてみてください。一番右側のテキストボックスに計算結果が表示されます。
このサンプルのソースは、次のようになっています。
<SCRIPT LANGUAGE="JavaScript">
<!--
function CalcA(EnzanA) {
</SCRIPT>
<form name="SanjutuA">
<!--
function CalcA(EnzanA) {
Text1 = document.SanjutuA.text1.value;
Text2 = document.SanjutuA.text2.value;
}
//-->Text2 = document.SanjutuA.text2.value;
if ( EnzanA == "+" ) { Ans = eval(Text1) + eval(Text2) ; }
if ( EnzanA == "-" ) { Ans = Text1 - Text2 ; }
if ( EnzanA == "*" ) { Ans = Text1 * Text2 ; }
if ( EnzanA == "/" ) { Ans = Text1 / Text2 ; }
if ( EnzanA == "%" ) { Ans = Text1 % Text2 ; }
document.SanjutuA.ans.value = Ans ;if ( EnzanA == "-" ) { Ans = Text1 - Text2 ; }
if ( EnzanA == "*" ) { Ans = Text1 * Text2 ; }
if ( EnzanA == "/" ) { Ans = Text1 / Text2 ; }
if ( EnzanA == "%" ) { Ans = Text1 % Text2 ; }
}
</SCRIPT>
<form name="SanjutuA">
<input type="text" name="text1" size="4" value="16">
<input type="radio" name="EnzanA" onClick="CalcA('+')">+
<input type="radio" name="EnzanA" onClick="CalcA('-')">-
<input type="radio" name="EnzanA" onClick="CalcA('*')">*
<input type="radio" name="EnzanA" onClick="CalcA('/')">/
<input type="radio" name="EnzanA" onClick="CalcA('%')">%
<input type="text" name="text2" size="4" value="5">=
<input type="text" name="ans" size="8">
</form>
<input type="radio" name="EnzanA" onClick="CalcA('+')">+
<input type="radio" name="EnzanA" onClick="CalcA('-')">-
<input type="radio" name="EnzanA" onClick="CalcA('*')">*
<input type="radio" name="EnzanA" onClick="CalcA('/')">/
<input type="radio" name="EnzanA" onClick="CalcA('%')">%
<input type="text" name="text2" size="4" value="5">=
<input type="text" name="ans" size="8">
フォームを使って入力した値で加算を行った場合、文字列として扱われます。このため、このソースでは、加算の部分で
Ans = eval(Text1) + eval(Text2) ;
という記述をしています。eval() とは、数式を数値に変換するメソッドです。もし eval() を使わなかった場合、例えば 16 と 5 の加算結果は 165、abc と def の加算結果は abcdef という具合になります。目的に合わせて使い分けてください。
ランキングに参加中です! お役に立てたらクリックをお願いします→
コンピュータとインターネット > データ形式 > HTML > リファレンス