Web覚書トップ > JavaScript サンプル > 『めちゃくちゃ簡易な電卓を作ってみる』
説明

「eval」を使って、簡単過ぎる電卓を作ってみます。

実行例
▼「32+4-8」のような数式を入れてみてください。使える記号は「+-*/()」だけです(空白は入れないで)。
 

コード
function keisan(){
	var obj = window.document.form1.text1;
	var shiki = obj.value
	if (shiki == "") { return; }
	if (shiki.match(/[^\d\(\)\+\-\*\/\b]+/)) {
		window.alert('入力が不正です')
		obj.value = "";
		return;
	}
	obj.value = eval(shiki);
}
<FORM name="form1">
<INPUT type="text" name="text1" size=8 maxlength=8> 
<INPUT type="button" value="計算" onClick="keisan();">
</FORM>

解説&ステップアップ

「eval」は、「3+4*(2-1)」な文字列を計算して答えを返すことができます。
入力した内容を、正規表現を使用してチェックしてます(あまり上手くないですが)。

動作確認

IE5.0(win)、IE5.5(win)、NN4.7(win)

© hyork@yahoo.co.jp (2001. 2. 7)