Подтвердить что ты не робот

Объяснить + var и -var унарный оператор в javascript

Я пытаюсь понять унарные операторы в javascript, я нашел это руководство здесь http://wiki.answers.com/Q/What_are_unary_operators_in_javascript, большинство из них имеет смысл, но то, что я делаю "Не понимаю, как следующие примеры будут использоваться в фактическом примере кода:

+a;
-a;

По моему мнению, + a; предназначен для того, чтобы сделать переменную положительным значением a и -a;, чтобы сделать переменную отрицательным значением а. Я пробовал несколько примеров, например:

a = -10;
a = +a;
document.writeln(a);

И выход по-прежнему -10;

Я также пробовал:

a = false;
a = +a;
document.writeln(a);

И вывод равен 0;

Каков практический пример кода этих унарных операторов?

4b9b3361

Ответ 1

Оператор + не меняет знак значения, а оператор - меняет знак. Результат обоих операторов зависит от знака исходного значения, ни один оператор не делает значение положительным или отрицательным независимо от исходного знака.

var a = 4;
a = -a; // -4
a = +a; // -4

Функция abs делает то, что, по вашему мнению, делает + opreator; он делает значение положительным независимо от исходного знака.

var a =-4;
a = Math.abs(a); // 4

Выполнение +a практически такое же, как при выполнении a * 1; он преобразует значение в a в число, если это необходимо, но после этого оно не меняет значение.

var a = "5";
a = +a; // 5

Оператор + используется иногда для преобразования строки в числа, но у вас есть функции parseInt и parseFloat для выполнения преобразования более определенным образом.

var a = "5";
a = parseInt(a, 10); //5

Ответ 2

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

var threeStr = '3.0'
var three = +threeStr
console.log(threeStr + 3) // '3.03'
console.log(three + 3) //6

Ответ 3

Я хотел бы объяснить это из основной математической точки:
Правила умножения:

Positive x Positive = Positive: 3 x 2 = 6  
Negative x Negative = Positive: (-2) x (-8) = 16   
Negative x Positive = Negative: (-3) x 4 = -12  
Positive x Negative = Negative: 3 x (-4) = -12  

Учитывая пример:

a = -10;
a = +a
document.writeln(a);

+ a = + (- 10) = Положительный x Отрицательный = Отрицательный = -10

a = false;
a = +a;
document.writeln(a);

false == 0, + a = + (+ 0) = Positive * Positive = Positive = 0 (возможно, лучше использовать пример true)

Ответ 4

a = 1
b = -a
console.log(b)

output
-1

Ответ 5

Попробуйте это

false == 0 // returns true

Итак,

a = false

a = +a //a * 1

console.log(a) // prints 0 as expected

Ответ 6

Оператор

'+' в переменной "a" просто означает: a

Оператор

'-' в переменной "a" просто означает: -a

Since, in above example 
a=-10;
a= +a; // means a, ie, +(-10) which is -10

but,
a= -a;  // means -a, ie, -(-10) which is +10

Ответ 7

+ a означает a * 1 а также -a означает a * (- 1)

Вот оно!!!!!!