<script>
//检查是否为任意数(实数)
function isNumeric(strNumber)
{
  var newPar=/^(-|\+)?\d+(\.\d+)?$/
  alert(newPar.test(strNumber));
}
//检查是否为正数
function isUnsignedNumeric(strNumber)
{
  var newPar=/^\d+(\.\d+)?$/
  alert(newPar.test(strNumber));
}
//检查是否为整数
function isInteger(strInteger)
{
  var newPar=/^(-|\+)?\d+$/
  alert(newPar.test(strInteger));
}
//检查是否为正整数
function isUnsignedInteger(strInteger)
{
  var newPar=/^\d+$/
  alert(newPar.test(strInteger));
}
</script>

解决方案 »

  1.   

    <script>
     function isfloat(str){
       var s=   str.match(/(\+|\-|)(\d)*(\.|)(\d)*/g);
       return (s!=null) &&  (s[0]==str);
     }
     alert(isfloat('-3.33344'));
    </script>
      

  2.   

    大花猫你这个正则连"-"也成true了:))
      

  3.   

    to vivianfdlpw() 
    -------
    我是考虑到-.333 的情况才那样写的。既然如你所说,可以改成
    <script>
     function isfloat(str){
       var s=   str.match(/(\+|\-|)(\d)+(\.|)(\d)*/g);
       return (s!=null) &&  (s[0]==str);
     }
     alert(isfloat('-3.33344'));
    </script>