Null iterable in for-of?

André Bargull andre.bargull at udo.edu
Thu Jun 12 15:16:42 PDT 2014


> On Jun 12, 2014, at 2:36 PM, Erik Arvidsson wrote:
>
> >/  Somehow I missed when we decided to allow null/undefined as the iterable value in for-of loops.
> />/  
> />/  The following test passes using the spec algorithms:
> />/  
> />/  var c = 0;
> />/  for (var x of null) {
> />/    c++;
> />/  }
> />/  assert.equal(c, 0);
> />/  
> />/  However, if we get a null value here we are most likely just masking an user bug.
> />/  
> />/  I assume the justification is that for-in allows null here? However, for-of is new syntax and we have the chance to get this right this time around.
> /
> Yup, there was an issue that was reported and fixed fairly recently pointing out that for-of was inconsistent with for-in in this respect.

for-of statement iteration always ignored undefined/null (always = since 
it was added in rev6). I've only requested in [1] to align for-of 
iteration in statements and comprehensions to have the same behaviour 
w.r.t. undefined/null.


[1] https://bugs.ecmascript.org/show_bug.cgi?id=273

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20140613/f3f03d42/attachment.html>


More information about the es-discuss mailing list