Znalazłem to w kawałku kodu i zastanawiam się, co robi? Przypisz b do x ... ale co jest z ,c
?Co robi przecinek w instrukcjach przypisania w JavaScript?
var x = b, c;
Znalazłem to w kawałku kodu i zastanawiam się, co robi? Przypisz b do x ... ale co jest z ,c
?Co robi przecinek w instrukcjach przypisania w JavaScript?
var x = b, c;
który deklaruje dwie zmienne, x
i c
, i przypisuje wartość b
zmiennej x
.
Jest to równoznaczne z bardziej zrozumiałej formie *:
var x = b;
var c;
JavaScript umożliwia wielokrotne deklaracje za var
hasła – każda nowa zmienna jest oddzielone przecinkiem. Jest to styl sugerowany przez JSLint, który instruuje programistów do używania pojedynczego var na funkcję (komunikat o błędzie z JSLint to Combine this with the previous 'var' statement.
).
* W rzeczywistości, w związku z podnoszeniem będzie interpretowany jako var x; var c; x = b
.
który definiuje dwie zmienne lokalne x
i c
- podczas ustawiania x
„s wartość równą wartości b
.
c
to undefined
.
Jest to równoważne:
var x = b;
var c;
To samo jak
var x = b;
var c;
jeden z tych tak mądry, że to bardzo głupie dodatki do języka.
+1 dla: "tak sprytny, że jest wyjątkowo głupi" – Teddy
możliwy duplikat przydziału [\ 'x = y, z \' comma przypisania w JavaScript] (http://stackoverflow.com/questions/12769922/xyz-comma-assignment-in-javascript) –