<div dir="ltr"><br><div class="gmail_extra"><br clear="all"><div>Yehuda Katz<br>(ph) 718.877.1325</div>
<br><br><div class="gmail_quote">On Sat, Jun 8, 2013 at 9:23 PM, Dmitry Soshnikov <span dir="ltr"><<a href="mailto:dmitry.soshnikov@gmail.com" target="_blank">dmitry.soshnikov@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div style="word-wrap:break-word"><div>I might be missing something, but how for-of help solving parametrized enumeration (that is, specifying an action applied on a value/key in a functional style)?</div><div><br></div>
<div>
I see clear use-case of Object.values(...) in addition to Object.keys(...), and it has nothing to do with for/of enumeration.</div><div><br></div><div>Why refuse a convenient library method and force users to 1) let values = []; 2) for (v of values(o)) { values.push(v); }, if it can be just let values = Object.values(o);?</div>

</div></blockquote><div><br></div><div>I'm confused. Your example shows (correctly) that a `values` method exists that does what you want. What more are you asking for?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div style="word-wrap:break-word"><div>Why refuse a _parametrized_ functional iteration such as Object.forEach(o, parametrizedAction) and force users to write different static for-of loops with own loop body per each condition, if this condition can be passed as a function?<br>

</div></div></blockquote><div><br></div><div>I am personally in favor of a collections module that works across any iterable. I don't think we have anything on tap for ES6, but it would be trivial to write in pure JS in the ES6 timeframe and I don't see any reason it couldn't be folded in to ES7 once it gets some real-world usage.</div>

<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div></div><div><br></div><div>P.S.: for consistency with [].forEach, it probably would make sense having {}.forEach, but it's O.prototype pollution.</div>

<div><br></div><div>Dmitry</div><div><div class="h5"><br><div><div>On Jun 7, 2013, at 10:18 AM, Dean Landolt wrote:</div><br><blockquote type="cite"><div dir="ltr">The for/of iterators solve this nicely. This is definitely something that comes up a lot though, and this seems like a very handy cowpath to pave. If it were spec'd I'd suggest the naming and argument values should align with the for/of variants.<br>



</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jun 7, 2013 at 12:57 PM, Andrea Giammarchi <span dir="ltr"><<a href="mailto:andrea.giammarchi@gmail.com" target="_blank">andrea.giammarchi@gmail.com</a>></span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">it comes out from time to time devs would like to have `Object.values()` as equivalent of `Object.keys()` except the returned array would contain values.<div>



<br></div><div>Better than repeated</div><div>
`Object.keys(obj).map(function(p){return this[k];}, obj);`</div><div>all over</div><div><br></div><div>but probably less useful than a more generic `Object.forEach(obj, callback, thisValue)` where `callback` would receive `(value, key, originalObject)` and `thisValue` as context.</div>




<div><br></div><div>This is consistent with `Array#forEach` and could simplify `for/in` loops passing over own enumerable properties only, as keys would do.</div><div><br></div><div>Thoughts ?</div>
</div>
<br>_______________________________________________<br>
es-discuss mailing list<br>
<a href="mailto:es-discuss@mozilla.org" target="_blank">es-discuss@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/listinfo/es-discuss</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>es-discuss mailing list<br><a href="mailto:es-discuss@mozilla.org" target="_blank">es-discuss@mozilla.org</a><br><a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/listinfo/es-discuss</a><br>

</blockquote></div><br></div></div></div><br>_______________________________________________<br>
es-discuss mailing list<br>
<a href="mailto:es-discuss@mozilla.org">es-discuss@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/listinfo/es-discuss</a><br>
<br></blockquote></div><br></div></div>