Регулярные выражения не нужны:
var snumber1 = "123456789",
scharacter2 = "abcdefgh";
if ( isNaN(+snumber1) ) {
alert('snumber is not a number!');
}
if ( !isNaN(+scharacter2) ) {
alert('scharacter2 is not a string!');
}
Обратите внимание, что я использую оператор +
для приведения типов. Это всегда приводит к числу или NaN. Если вы используете функции parseInt
или parseFloat
, вы можете получить '10' из parseInt('010abc', 10)
. Это явно не проходит ваш тест на «только цифры» (*) .