在今天的练习中遇到个小问题,如何判断输入的数值是否为小数,经过交流请教
对此问题有所解决。
比如在需要用户输入一个数字来显示该数字是用户的幸运数字时,
下段代码只能判断用户输入的信息是否为数字和是否为大于0的数字:
当用户输入的数值为小数的时候,判断仍通过(当然这只是一个例子,只要个人喜欢,整数小数都是可以做你的幸运数字的)

那么,要让判断出输入的值是否为小数,就要补充下判断条件:


这样就可以判断输入值是否小数了。
string(newNum) //先将prompt返回给变量的值newNum转换成字符串
string(newNum).indexOf(".") //再使用indexOf()函数查找字符串中的小数点".",然后返回小数点在该字符串中出现的位置。(indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置,如果要检索的字符串值没有出现,则该方法返回 -1。)
然后对indexOf()函数返回的值判断,string(newNum).indexOf(".") >-1 即表示该字符串中存在小数点,则该数值为小数。(因为只有在没有小数点的情况想,indexOf()才会返回-1,只要字符串中包含小数点,便会返回大于或等于0的值,所以返回值只要跟-1比较,大于-1即为小数。)
JS初学者,仅发表学习心得,如有错误之处,还望指教,多多分享。
对此问题有所解决。
比如在需要用户输入一个数字来显示该数字是用户的幸运数字时,
下段代码只能判断用户输入的信息是否为数字和是否为大于0的数字:
点击(此处)折叠或打开
- var newNum = prompt('请输入一个数字!','');
-
if(!newNum||isNaN(newNum)){
-
alert('请输入数字!')
-
}
-
else if(nonewNum<0){
-
alert('请输入一个大于0的数字!')
-
}
-
else{
-
alert(newNum+'将会是你的幸运数字!')
- }

那么,要让判断出输入的值是否为小数,就要补充下判断条件:
点击(此处)折叠或打开
-
else if(String(newNum).indexOf(".")>-1){
- alert('请输入整数!')


这样就可以判断输入值是否小数了。
点击(此处)折叠或打开
- String(newNum).indexOf(".")>-1
string(newNum).indexOf(".") //再使用indexOf()函数查找字符串中的小数点".",然后返回小数点在该字符串中出现的位置。(indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置,如果要检索的字符串值没有出现,则该方法返回 -1。)
然后对indexOf()函数返回的值判断,string(newNum).indexOf(".") >-1 即表示该字符串中存在小数点,则该数值为小数。(因为只有在没有小数点的情况想,indexOf()才会返回-1,只要字符串中包含小数点,便会返回大于或等于0的值,所以返回值只要跟-1比较,大于-1即为小数。)
JS初学者,仅发表学习心得,如有错误之处,还望指教,多多分享。