Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #27883
| From | Joao Rodrigues <groups_jr-1@yahoo.com.br> |
|---|---|
| Newsgroups | comp.lang.javascript |
| Subject | Re: Why does (a,b,c) return only c? |
| Date | 2015-05-26 09:36 -0300 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <mk1pc4$ajd$1@speranza.aioe.org> (permalink) |
| References | <55630af5$0$13000$c3e8da3$5496439d@news.astraweb.com> <gf4c3c-iks.ln1@mail.binaryfoundry.ca> <XnsA4A5DF4D39BAAeejj99@194.109.133.246> <mk07ei$t55$1@speranza.aioe.org> <1687513.QYX3roR0lP@PointedEars.de> |
On 26/05/2015 07:26, Thomas 'PointedEars' Lahn wrote:
> Joao Rodrigues wrote:
>
>> But why on Earth would someone use comma operators? Because they let you
>> specify more than one expression where JavaScript expects only one. See
>> examples at:
>> <https://javascriptweblog.wordpress.com/2011/04/04/the-javascript-comma-operator/>
>
> Bogus.
A bit of disdain here.
See an example:
var colorIndex = 0,
colors = ["FF0000", "008000", "FF0086"];
function selectNextColor() {
return colors[colorIndex++] || colors[colorIndex = 0, colorIndex++];
}
>
> | //original
> | var a = 7, 5;
> | //apply = operator
> | var a, 5; //a is now 7
> | //SyntaxError: missing variable name
>
> is not a syntax error because “we [haven’t] wrapped the variable assignment
> in parentheses”, but because _“5” is not a valid variable name_.
ACK.
>
> And the value of “a” is not 7, but _not defined_ at this line (that is
> different from the “undefined” value), because
>
> var a = 7, 5;
>
> is a syntax error already:
ACK.
>
> The subsequent example in that article, where it works, is
>
> | //original
> | var a = (7, 5);
> | //apply group
> | var a = 5;
>
> where not only the parentheses have been inserted, but magically the comma
> has been replaced by a “=”. Surprise.
Wrong, because var a = (7, 5) is evaluated as follows:
var a;
a = (7, 5); // a = 5;
The parentheses (grouping operator, ES 5.1, §11.1.6) return the result
of evaluating expression, i.e (7, 5) will return 5.
--
Joao Rodrigues
Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Why does (a,b,c) return only c? Steven D'Aprano <steve@pearwood.info> - 2015-05-25 21:43 +1000
Re: Why does (a,b,c) return only c? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2015-05-25 14:17 +0200
Re: Why does (a,b,c) return only c? Luuk <luuk@invalid.lan> - 2015-05-25 14:42 +0200
Re: Why does (a,b,c) return only c? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2015-05-25 14:58 +0200
Re: Why does (a,b,c) return only c? "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-05-25 14:57 +0200
Re: Why does (a,b,c) return only c? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2015-05-25 15:07 +0200
Re: Why does (a,b,c) return only c? "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-05-25 15:32 +0200
Re: Why does (a,b,c) return only c? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2015-05-25 17:50 +0200
Re: Why does (a,b,c) return only c? Luuk <luuk@invalid.lan> - 2015-05-25 19:53 +0200
Re: Why does (a,b,c) return only c? "D. Aaron Sawyer" <aaron@110.net> - 2015-05-25 19:49 -0300
Re: Why does (a,b,c) return only c? John-Paul Stewart <jpstewart@sympatico.ca> - 2015-05-25 13:58 -0400
Re: Why does (a,b,c) return only c? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2015-05-25 21:57 +0200
Re: Why does (a,b,c) return only c? Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2015-05-25 19:24 -0300
Re: Why does (a,b,c) return only c? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-05-26 12:26 +0200
Re: Why does (a,b,c) return only c? Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2015-05-26 09:36 -0300
Re: Why does (a,b,c) return only c? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-05-26 14:42 +0200
Re: Why does (a,b,c) return only c? Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2015-05-26 09:53 -0300
Re: Why does (a,b,c) return only c? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2015-05-26 15:15 +0200
Re: Why does (a,b,c) return only c? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-05-26 15:17 +0200
Re: Why does (a,b,c) return only c? Scott Sauyet <scott.sauyet@gmail.com> - 2015-05-26 08:59 -0700
csiph-web