That should certainly work! I'd just say inside this one function I'd avoid immutability - because nothing has access to the mutable object and it will allocate a lot less memory if you modify one thing rather than make a new one on each loop.
Odd on the "out of the box" all my tests seem to be ok. You probably don't want to yield that much. I'd be saying (if collection is an array) that you should yield every 32 or something using
if((key&31)===0)yield
It's a balance between checking often enough and slowing it down a lot by checking too much.
In more recent versions you can also just call run() on the result of executing the generator, in your example this simplified the second routine to be:
It totally make sense!
Updated the npm as I was way behind... odd that I had to uninstall and then install again. Otherwise it was still version 1.1.36.
I hope that will not break the code now :)
Thanks for everything!
Right I added a breaking change a while ago, but it only affects a very small use case, so hopefully all ok. It was when I changed from using an external polyfill for requestIdleCallback to the new internal one.
Updated an everything seems to work like a charm!
Still It seems that you forgot some "debugger" at keyBy in array-utilities.js.
(Should I have written on GitHub on that? if so sorry)
That should certainly work! I'd just say inside this one function I'd avoid immutability - because nothing has access to the mutable object and it will allocate a lot less memory if you modify one thing rather than make a new one on each loop.
Certainly, and perhaps is significant on large data..
I put up something like this..:
and call it from useEffect from inside a hook...
For some reason I could not use the keyBy provided "out of the box". I think is a npm issue on my side
Odd on the "out of the box" all my tests seem to be ok. You probably don't want to yield that much. I'd be saying (if collection is an array) that you should yield every 32 or something using
It's a balance between checking often enough and slowing it down a lot by checking too much.
In more recent versions you can also just call
run()
on the result of executing the generator, in your example this simplified the second routine to be:npm version should be 2.3.62
It totally make sense!
Updated the npm as I was way behind... odd that I had to uninstall and then install again. Otherwise it was still version 1.1.36.
I hope that will not break the code now :)
Thanks for everything!
Right I added a breaking change a while ago, but it only affects a very small use case, so hopefully all ok. It was when I changed from using an external polyfill for
requestIdleCallback
to the new internal one.Updated an everything seems to work like a charm!
Still It seems that you forgot some "debugger" at keyBy in array-utilities.js.
(Should I have written on GitHub on that? if so sorry)
Ouch lol. Ooops. Fixing that.
2.3.63 - removed the
debugger