I think that these methods should exist in iterator prototypes, with the native iterators subclassing something like Iterator. Object.entries and Object.values should return iterators that inherit these methods. Such wrapper libraries are already coming out, and making existing arrays lazily iterate already exists in `Symbol.iterator`.
On Tue, Feb 2, 2016, 12:12 Simon Blackwell <[email protected]> wrote: > Although Rick makes a good point that Object.values and Object.entries > make creating functionality similar to that describe by Kaustubh, they are > no exactly direct. We have added the requested functions to V2.0 of > JavaScript Object Extensions at https://github.com/anywhichway/joex. > > > On Fri, Jan 29, 2016 at 7:44 PM, Rick Waldron <[email protected]> > wrote: > >> >> >> On Fri, Jan 29, 2016 at 6:08 PM Kaustubh Karkare < >> [email protected]> wrote: >> >>> I have recently come to feel the need for Object.map, which is like >>> Array.map, >>> except that it receive keys instead of indices. >>> >>> Object.prototype.map = function(mapFn, context) { >>> return Object.keys(this) >>> .reduce(function(result, key) { >>> result[key] = mapFn.call(context, this[key], key, this); >>> return result; >>> }, {}); >>> }; >>> >>> Without this, I frequently do the exact same thing as the above manually, >>> which leads to unnecessary code duplication. >>> >>> Given that, it might make sense to match other methods from >>> Array.prototype >>> >>> Object.map >>> Object.filter >>> Object.every >>> Object.some >>> Object.reduce >>> Object.find >>> Object.findKey // like Array.findIndex >>> >> >> >> Are these necessary given the introduction of Object.values() and >> Object.entries()? https://github.com/tc39/proposal-object-values-entries >> >> Rick >> >> _______________________________________________ >> es-discuss mailing list >> [email protected] >> https://mail.mozilla.org/listinfo/es-discuss >> >> > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss >
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

