как конвертировать -1 в 1 с помощью JavaScript? - PullRequest
1 голос
/ 20 сентября 2010

как конвертировать -1 в 1 с помощью JavaScript?

var count = -1; //or any other number -2 -3 -4 -5 ...

или

var count = 1; //or any other number 2 3 4 5 ...

результат должен быть

var count = 1; //or any other number 2 3 4 5 ...

Ответы [ 4 ]

17 голосов
/ 20 сентября 2010
 count = Math.abs(count)
 // will give you the positive value of any negative number
3 голосов
/ 20 сентября 2010

Альтернативный подход (может быть быстрее, чем Math.abs, без проверки):

count = -5;
alert((count ^ (count >> 31)) - (count >> 31));

Обратите внимание, что побитовые операции в javascript всегда выполняются в 32-битном формате.

3 голосов
/ 20 сентября 2010

Функция abs превращает все числа в положительные: т.е. Math.abs (-1) = 1

0 голосов
/ 20 сентября 2010

Если количество процентов составляет input ... В дополнение к Math.abs(input) ....

var count = (input < 0 ? -input : input);

jsFiddle пример

( редактировать: как отмечали некоторые * -input быстрее, чем -1 * input)

Выше используетсяусловный оператор Javascript .Это единственная троичная (с тремя операндами) оператор Javascript.

Синтаксис:

condition ? expr1 : expr2

Если condition истинно, expr1 оценивается, если оно равно фейлу expr2 оценивается.

...