Что делает запятая в операторах присваивания в JavaScript?
Я нашел это в куске кода, и мне интересно, что он делает? Назначьте b в x... но что с ,c?
var x = b, c;
Ответ 1
Объявляет две переменные x и c и присваивает значение b переменной x.
Это эквивалентно более явному виду *:
var x = b;
var c;
JavaScript допускает несколько объявлений на var keyword – каждая новая переменная разделяется запятой. Это стиль, предложенный JSLint, который инструктирует разработчиков использовать одну переменную для каждой функции (сообщение об ошибке от JSLint Combine this with the previous 'var' statement.).
* Собственно, из-за подъема это будет интерпретироваться как var x; var c; x = b.
Ответ 2
Определяет две локальные переменные x и c - при установке значения x, равного значению b.
Ответ 3
cundefined.
Это эквивалентно:
var x = b;
var c;
Ответ 4
Это то же самое, что и
var x = b;
var c;
Один из тех настолько умных, это очень глупые дополнения к языку.