Как проверить, что данное значение является положительным или отрицательным целым числом?

Позволяет говорят, что у меня есть значение 10 присвоенных к переменной;

var values = 10;

и я хочу выполнить определенную функцию, если значение является положительным

if(values = +integer){ 
    //do something with positive 
} else { 
    //do something with negative values 
}

Как это было бы достигнуто?

62
задан 12 August 2011 в 12:46

7 ответов

Запуск с основы, что полученное значение является числом и не строкой, что относительно использования Math.abs()? Эта собственная функция JavaScript возвращает абсолютное значение числа:

Math.abs(-1) // 1

, Таким образом, можно использовать его этот путь:

var a = -1;
if(a == Math.abs(a)){
    // false 
}

var b = 1;   
if(b == Math.abs(b)){
    // true
}
0
ответ дан 31 October 2019 в 13:06

Я знаю, что прошло некоторое время, но существует более изящное решение. От Mozilla документы :

Math.sign(parseInt(-3))

Это даст Вам-1 для отрицания, 0 для нуля и 1 для положительного.

0
ответ дан 31 October 2019 в 13:06

Положительное целое число:

if (parseInt(values, 10) > 0) {

}
1
ответ дан 31 October 2019 в 13:06

Проверять число - положительный, отрицательный или отрицательный нуль. Проверьте его знак с помощью Math.sign () метод, который он предоставит Вам-1,-0,0 и 1 на основе положительного отрицательного и отрицательного нуля или нуля номера

 Math.sign(-3) // -1
 Math.sign(3) // 1
 Math.sign(-0) // -0
 Math.sign(0) // 0
2
ответ дан 31 October 2019 в 13:06

Необходимо сначала проверить, является ли входное значение interger с isNumeric () функция. Затем добавьте условие или больше, чем 0. Это - код jQuery для него.

function isPositiveInteger(n) {
        return ($.isNumeric(n) && (n > 0));
}
0
ответ дан 31 October 2019 в 13:06

Для проверки положительного целого числа:

var isPositiveInteger = function(n) {
        return ($.isNumeric(n)) && (Math.floor(n) == n) && (n > 0); 
}
-1
ответ дан 31 October 2019 в 13:06

Я думал здесь, Вы хотели сделать действие, если это положительно.

Затем предложил бы:

if (Math.sign(number_to_test) === 1) {
     function_to_run_when_positive();
}
12
ответ дан 31 October 2019 в 13:06

Другие вопросы по тегам:

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