■演算誤差とは
0.1を10回足したら、いくつになるでしょうか? 答えは1です。しかし、この計算をコンピューターで計算を行うと1にならずに0.999999になってしまいます。つまり計算による誤差が発生してしまうのです。コンピューターで行われる小数値の計算は演算誤差が発生します。これは内部では10進数でなく2進数に変換されて計算されるためです。内部が10進数、BCD演算が行われている場合には、このような演算誤差は非常に少なくなります。詳しくは演算誤差というキーワードで検索して調べてみてください。■ブラウザでの結果
ここでは各ブラウザでの演算誤差の結果を示します。0.1を10回計算した結果と0.1と0.4-0.3の計算結果を比較したもので行っています。ブラウザ名の部分をクリックすると実際の実行画面をキャプチャーした画像が表示されます。| OS | ブラウザ | 0.1を10回計算した結果 | 0.1と0.4-0.3の比較結果 | 
| Windows 98 | Internet Explorer 4.0 | × | × | 
| Windows 2000 | Internet Explorer 5.0 | × | × | 
| Windows Me | Internet Explorer 5.5 | × | × | 
| Windows XP Home | Internet Explorer 6.0 | × | × | 
| Windows XP Home | Netscape 6.2 | × | × | 
| Windows XP Home | Netscape 7.1 | × | × | 
| Windows XP Home | Firefox 1.0beta | × | × | 
| Windows XP Home | Opera 6.06 | × | × | 
| Windows XP Home | Opera 7.23 | × | × | 
| Windows XP Professional (SP2) | Internet Explorer 6.0 | × | × | 
| Macintosh (MacOS X 10.3) | Internet Explorer 5.2.3 | × | × | 
| Macintosh (MacOS X 10.3) | Netscape 7.1 | × | × | 
| Macintosh (MacOS X 10.3) | Mozilla 1.7.2 | × | × | 
| Macintosh (MacOS X 10.3) | Firefox 0.8 | × | × | 
| Macintosh (MacOS X 10.3) | Opera 6.03 | × | × | 
| Macintosh (MacOS X 10.3) | Opera 7.5 | × | × | 
| Macintosh (MacOS X 10.3) | iCab 2.9.8 | ○ | × | 
スクリプトは以下のようになっています。こちらのページで実行できます。
	<html>
	<head>
	<title>演算誤差テスト</title>
	</head>
	<body>
	<h1>演算誤差テスト</h1>
	<br>
	■0.1を10回加算<br>
	<script language="JavaScript"><!--
	for (i=0,n=0; i<10; n+=0.1,i++);
	document.write(n);
	// --></script>
	<br>
	<hr>
	<br>
	■0.1と0.4-0.3の結果の比較<br>
	<script language="JavaScript"><!--
	a = 0.1;
	b = 0.4-0.3;
	if (a == b) document.write("0.1と0.4-0.3は同じ");
	if (a < b) document.write("0.1は0.4-0.3より小さい");
	if (a > b) document.write("0.1は0.4-0.3より大きい");
	// --></script>
	<br>
	<hr>
	<br>
	</body>
	</html>