检查string是否只包含数字

我想检查一个string是否只包含数字。 我用这个:

var isANumber = isNaN(theValue) === false; if (isANumber){ .. } 

..但是意识到它也允许+和 – 。 基本上我想确保input只包含数字,没有其他字母。 既然+100和-5都是数字,isNaN,是不是正确的路要走。 也许正则expression式是我需要的? 任何提示?

怎么样

 var isnum = /^\d+$/.test(val); 
 string.match(/^[0-9]+$/) != null; 
 var isNumber = /^\d+$/.test(theValue); 
 String.prototype.isNumber = function(){return /^\d+$/.test(this);} console.log("123123".isNumber()); // outputs true console.log("+12".isNumber()); // outputs false 

这是你想要的

 function isANumber(str){ return !/\D/.test(str); } 

那么,你可以使用下面的正则expression式:

 ^\d+$ 

如果你想甚至支持浮点值(点分隔值),那么你可以使用这个expression式:

 var isNumber = /^\d+\.\d+$/.test(value);