Существует ли функция, чтобы протестировать, если Строковая переменная является числовым значением?

Существует ли способ протестировать строку, такую как та ниже, чтобы видеть, является ли это фактическое числовое значение?

var theStr:String = '05';

Я хочу дифференцироваться между строковым значением выше и один, таким как это:

var theStr2:String = 'asdfl';

Спасибо!

6
задан Mike Moore 16 June 2010 в 19:48
поделиться

2 ответа

Да, используйте функцию isNaN , чтобы проверить, является ли строка допустимым числом :

var n:Number=Number(theStr);
if (isNaN(n)){
 trace("not a number");
} else {
 trace("number="+n);
}
13
ответ дан 8 December 2019 в 15:59
поделиться

Если вас просто интересует проверка целых чисел, вы можете использовать функцию сопоставления следующим образом: регулярное выражение для чисел более сложное, и вам, вероятно, будет лучше следовать методу приведения, который предоставил Патрик.

if (s.match(/^\d+$/)){//do something}

Конечно, если вам все равно нужно его преобразовать, то использование isNaN имеет смысл. Просто подумал, что предлагаю альтернативу на случай, если ты не собирался ее разыгрывать.

Этот код вернет истину, если s содержит только цифры (без пробелов, десятичных знаков, букв и т. Д.) И требует наличия хотя бы 1 цифры.

0
ответ дан 8 December 2019 в 15:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: