правой, так что мой вопрос:Определение переменной с несколькими значениями в скобках используется 2-ое значение
var x = (val1,val2);
устанавливает значение х в val2;
Почему?
правой, так что мой вопрос:Определение переменной с несколькими значениями в скобках используется 2-ое значение
var x = (val1,val2);
устанавливает значение х в val2;
Почему?
Так как работает comma operator: он вычисляет оба операнда, а результат выражения - это значение второго.
Обратите внимание, что это очень отличается от того, что вы бы, если вы не имели круглые скобки там:
// Differs *significantly* from your example:
var x = val1, val2;
Без скобок, вы бы не использовать оператор запятой на всех , вы должны использовать запятую как часть списка объявлений var
statement, который имеет разную семантику — конкретно, что x
получает значение val1
, и у вас есть объявление для val2
, которое не инициализируется в этом коде.
Но опять же, это совсем другое дело.
[Comma operator] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comma_Operator) –