初来乍到,第一次写文章,其中也没有太多复杂技术,可能对初学者有所帮助。废话很少说,最近遇到一个问题,如何判断客户输入的商品数量是负数 或者是小数呢? 由于一个商品确定是个整数,我须要对用户输入的值作一个判断。禁止输入负数和小数。那么在不借助任何框架的前提下 该怎么判断输入的值是float仍是int呢?bash
方法1:框架
可是一开始我想到是 若是一个数是float类型,那取整以后确定再也不等于他自己;函数
所以有了这个方法:ui
var a = 1.3; alert(a != parseInt(a) );//固然Math.
ceil Math.floot 函数也能够作到。spa
网上大佬的方法:code
看网上大神怎么作的。我看了以后以为眼前一亮啊,绝啊!string
例1:使用了~运算符,这个运算符做用就是 把后面是数字 取反减一并忽略小数部分var a =3.2; console.log(~3.2);//输出-4复制代码
console.log(~~a==a);//两个就是运算两次,输出若是是int类型 确定不受影响 复制代码
例2:用%1,任何int%1 都是0,而float%1 就不等于0;it
var a = 3.2;consol.log(a%1 !=0)//返回true 说明是float类型复制代码
例3:利用隐式转换 若是int加 string类型的小数 依然会隐式转换成number类型。而因为小数自身有一个点,再加一个string类型的小数,则会返回一个真正的string。console
var a = 2;
console.log(a+".3");//返回2.3 number
a ==2.3;
console.log(a+".3");//返回2.3.3 string复制代码
大佬用的方法我也是吸取并推广,若是各位还有什么秒方法,请在评论里发表,咱们一块儿交流一下。class
初来乍到,还请各位多多关照。