2013-08-27 6 views
-1

Скажите, что у меня есть диапазон, который состоит из < -10, и я разделил его, используя вызов регулярного выражения, который оставляет меня с <-10.Укажите, является ли число минусом или положительным числом.

У меня тогда есть функция, которая получает мне номер из раскола, и я называю это range1.getMin(), это вернет -10, но когда я использую range1.getMin().indexOf('-'), это не сработает.

+2

Пожалуйста, ваш код и уточнить, что происходит, когда он «не работает». Обратите внимание, что вы можете разобрать эту строку в число и сравнить результат с нулем, который может быть более надежным в зависимости от вашего ввода. –

+1

Возможно, ваша функция возвращает число, просто сравните его с '0'. – Teemu

+0

Почему вы используете регулярное выражение для математической функции? – Johnsyweb

ответ

-1
var val = parseInt("-10", 10) 

можно использовать для разбора целого и для проверки положительного числа

val >= 0 
+3

Не забудьте часть redix .. 'parseInt (" - 10 ", 10)' – Pranav

+0

@Pranav благодарит ... Вниз избирателя, пожалуйста, объясните .. – Bharath

+0

Я не спустил Проголосовали наверняка .. :) – Pranav

0
function isMin(value) { 
    if(value<0) { 
    return true; 
    } 
    return false; 
} 

Вы можете добавить проверку как eval() для значения, чтобы убедиться, что вы имеете дело с целым числом.

Кроме того, если вы хотите, чтобы у вас было положительное число (или отрицательное число), прежде чем использовать номер в вашем процессе, вы можете указать свой номер, чтобы убедиться, что это всегда положительное число.

+0

В большинстве случаев вы не нужно 'eval', и вы не должны его использовать. С 'eval' вы всегда сталкиваетесь с проблемой, что вы, скорее всего, сломаете _code validation_ и _code optimization_. –

+0

Согласен, вы также можете использовать 'parseInt()', чтобы убедиться, что вы имеете дело с числами вместо строк, которые не будут сравниваться с целым числом. –

2

Try по сравнению с нулем:

var isNegative = range1.getMin() < 0; 
Смежные вопросы