JavaScript 判断指定字符串是否为有效数字

(编辑:jimmy 日期: 2026/1/20 浏览:2)

这样的check以前已经碰到很多了,但每次都是解决了就完了,没有记录下来,等下次碰到时又要花很多的时间去写。东西是需要积累的,现在特记录下来,希望这样的工作不再重复太多,也与大家一起分享。
复制代码 代码如下:
<!---
================================================================================
机能概要  :check指定字符串是否为有效数字
作成者   :Peter Jin
作成日   :2010-04-23
================================================================================
--->

<cfoutput>
<script type="text/javascript">
<!--

function BASEisNotNum(theNum)
{
//判断是否为数字
if (BASEtrim(theNum)=="")
return true;
for(var i=0;i<theNum.length;i++){
oneNum=theNum.substring(i,i+1);
if (oneNum<"0" || oneNum>"9")
return true;
}
return false;
}

function BASEisNotInt(theInt)
{
//判断是否为整数
theInt=BASEtrim(theInt);
if ((theInt.length>1 && theInt.substring(0,1)=="0") || BASEisNotNum(theInt)){
return true;
}
return false;
}

function BASEisNotFloat(theFloat)
{
//判断是否为浮点数
len=theFloat.length;
dotNum=0;
if (len==0)
return true;
for(var i=0;i<len;i++){
oneNum=theFloat.substring(i,i+1);
if (oneNum==".")
dotNum++;
if (((oneNum<"0" || oneNum>"9") && oneNum!=".") || dotNum>1)
return true;
}
if (len>1 && theFloat.substring(0,1)=="0"){
if (theFloat.substring(1,2)!=".")
return true;
}
return false;
}

function BASEtrim(str)
{
//去掉空格
lIdx=0;rIdx=str.length;
if (BASEtrim.arguments.length==2)
act=BASEtrim.arguments[1].toLowerCase();
else
act="all";
for(var i=0;i<str.length;i++){
thelStr=str.substring(lIdx,lIdx+1);
therStr=str.substring(rIdx,rIdx-1);
if ((act=="all" || act=="left") && thelStr==" "){
lIdx++;
}
if ((act=="all" || act=="right") && therStr==" "){
rIdx--;
}
}
str=str.slice(lIdx,rIdx);
return str;
}

// -->
</script>
</cfoutput>

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?