DataView has nothing to do with this performance-wise - implementations could just use the raw array buffer instead, and it'd be quicker and easier.
The issue is string representation - engines can optimize for it in ways you can't at the language level. On Wed, Aug 22, 2018 at 16:51 Ken Russell <[email protected]> wrote: > If DataView's methods were faster, would this eliminate the need for this > addition? > > In the V8 engine, some recent work significantly improved DataView's > performance. See http://crbug.com/225811 for details. > > -Ken > > > On Tue, Aug 21, 2018 at 7:02 PM Isiah Meadows <[email protected]> > wrote: > >> You might be interested in some of the things I have here: >> >> >> https://github.com/isiahmeadows/array-additions-proposal/blob/master/README.md >> >> I'm not quite to the point of pushing TC39 to consider, but after I get >> around to sorting it better, I'd love to see all of them eventually >> implemented. >> >> Note that for some common cases, like to ASCII or UTF-8 when no character >> in the string is above U+007F or to UCS-2/UTF-16 when at least one >> character is above that, it's a trivial `memcpy` for multi-character >> strings. >> On Tue, Aug 21, 2018 at 18:32 Ali Rahbari <[email protected]> wrote: >> >>> When working with binary data, reading string from buffer is a >>> necessity. For example when deserializing bson data in the browser. >>> >>> Most of node.js buffer methods are available in DataView except >>> toString. As a workaround currently it's done by reading the buffer byte by >>> byte and convert each of them to corresponding character with >>> String.fromCharCode() and then joining the result. >>> >>> This can be done much faster in native code. >>> >>> DataView.prototype.toString(start = 0, end = this.length, encoding= >>> "utf8") >>> >>> DataView.prototype.writeString(string, offset = 0, length = >>> string.length, encoding = "utf8") >>> >>> -- >>> Ali Rahbari >>> _______________________________________________ >>> 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

