看起来好像 AngularJS 的angular.isNumber
不管用。它不适用于数字字符串。难道我做错了什么?我应该只使用isNaN()
?
angular.isNumber('95.55') == false
angular.isNumber('95.55' * 1) == true
angular.isNumber('bla' * 1) == true
angular.isNumber(NaN) == true
我需要一些东西来查看字符串是否是数字(当它实际上是数字时)并且angular.isNumber()
除非我乘以 1,否则不会让我这样做,但如果我这样做,那么它永远是真的。还NaN
不是一个数字(根据定义),因此应该返回 false。
In JavaScript, typeof NaN === 'number'
.
如果您需要识别一个String as a Number,将其投射到Number, 转换回String例如,并将其与输入进行比较。
function stringIsNumber(s) {
var x = +s; // made cast obvious for demonstration
return x.toString() === s;
}
stringIsNumber('95.55'); // true
stringIsNumber('foo'); // false
// still have
stringIsNumber('NaN'); // true
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)