如何检查值是否为数字

时间:2015-07-22 08:49:02

标签: angularjs

我有这个功能:

 $scope.SearchTicketEvent = function (ticketPinOrEvent)
            {
                if (ticketPinOrEvent != undefined)
                {

                 if (ticketPinOrEvent.length == 10)
                    {

                     $scope.PinTicketSearch(ticketPinOrEvent);

                    }
                }


            }

如何检查ticketPinOrEvent是否为数字?我试过angular.isNumber(ticketPinOrEvent),但我什么都没得到?

3 个答案:

答案 0 :(得分:37)

如果你想使用angular.isNumber

    if ( !isNaN(ticketPinOrEvent) && angular.isNumber(+ticketPinOrEvent)) {
    }

答案 1 :(得分:6)

您可以使用typeof来测试变量是否为数字。

if (typeof ticketPinOrEvent === 'number') {
    $scope.PinTicketSearch(ticketPinOrEvent);
}

或者可以试试这个:

if (!isNaN(ticketPinOrEvent) && angular.isNumber(ticketPinOrEvent)) {
    $scope.PinTicketSearch(ticketPinOrEvent);
}

Testing against NaN:

  

NaN将不等(via ==, !=, ===, and !==)与任何其他值进行比较 -   包括另一个NaN值。最常使用Number.isNaN()isNaN()   清楚地确定一个值是否为NaN。或者执行一个   自我比较:NaN,只有NaN,将与自身不相等。

答案 2 :(得分:4)

在Angular 6中,该方法无需使用任何前缀。

示例:

if(isNumber(this.YourVariable)){
    // your Code if number
}
else {
    // Your code if not number
}