gpt4 book ai didi

javascript - 为什么 angular.isNumber() 没有按预期工作?

转载 作者:可可西里 更新时间:2023-11-01 02:21:05 24 4
gpt4 key购买 nike

看起来 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。

最佳答案

JavaScript 中,typeof NaN === 'number'

如果您需要将字符串识别为数字,将其转换为数字,再转换回字符串> 并将其与输入进行比较,例如。

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

关于javascript - 为什么 angular.isNumber() 没有按预期工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17351831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com