フォーラム@nifty | フォーラム・サークル | サイトマップ | ヘルプ |
掲示板 コラム お役立ち イベント リンク   | FHPGサイトマップ | お問い合わせ |
TOP > お役立ち > JavaScriptのおもちゃ箱 > 小数点の扱い  

小数点の扱い

原案:小中富雄 氏 (2000/04/01 登録)

 小数点の扱い

表示サンプル

X =

ソース記述内容

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<title>小数点の扱い</title>
<script type="text/javascript">
<!--

//特定文字を削除する関数
function removeIt(original,target){

    for(var i=0;i<target.length;i++){    
      var temp="";
      var m=target.substring(i,i+1);
      for(var j=0;j<original.length;j++) {
        var ch=original.substring(j,j+1);
        if (ch!=m) {
          temp+=ch;
        }
      }
    original=temp
    }
    return temp
  }


function result(){

//冒頭や接尾に余分なゼロが入っていた場合、それを除去し、
//後の削除作業のため、文字列型に変換する
    var left=parseFloat(document.f.left.value)
    left=""+left
    var center=parseFloat(document.f.center.value)
    center=""+center

//小数点を除去してそれぞれ変数に代入する
    var a=removeIt(left,".")
    var b=removeIt(center,".")

//小数点の位置を求める
    var x=left.indexOf(".")
    x=(x==-1)?0:(left.length-1-x)

    var y=center.indexOf(".")
    y=(y==-1)?0:(center.length-1-y)

    var result=parseFloat(a)*parseFloat(b)

//小数点を挿入し、結果を表示する
    document.f.right.value=result/Math.pow(10,x+y)

    }
// -->
</script>
</head>
<body>
<table border="0" align="center">
  <tr>
    <td>
      <form name="f">
        <input name="left" type="Text" size="20" maxlength="20" style="text-align:right">
        X 
        <input name="center" type="Text" size="20" maxlength="20" style="text-align:right">
        = 
        <input name="right" type="Text" size="30" maxlength="30" style="text-align:right">
        <input name="Input" type="Button" value="push" onClick="result()">
        <input name="Reset" type="Reset" value="reset">
      </form>
    </td>
  </tr>
</table>
</body>
</html>
個人情報保護ポリシー
Copyright© NIFTY 2006 All Rights Reserved.
Copyright© FHPG 2006 All Rights Reserved.