On 1/11/2012 2:49 PM, James Robinson wrote:


On Wed, Jan 11, 2012 at 2:45 PM, Charles Pritchard <[email protected] <mailto:[email protected]>> wrote:

    Currently, we can asynchronously use BlobBuilder with FileReader
    to get an array buffer from a string.
    We can of course, use code to convert String.fromCharCode into a
    Uint8Array, but it's ugly.

    The StringEncoding proposal seems a bit much for most web use:
    http://wiki.whatwg.org/wiki/StringEncoding

    All we really ever do is work on DOMString, and that's covered by
    UTF8.


DOMString is not UTF8 or necessarily unicode. It's a sequence of 16 bit integers and a length.

Is there any instance in practice where DOMString as exposed to the scripting environment is not implemented as a unicode string? I realize that internally, DOMString may be implemented as a 16 bit integer + length;

    As following file shows, DOMString to ArrayBuffer conversion is
    about 30 lines of code (start at line 125):
    http://code.google.com/p/stringencoding/source/browse/encoding.js


This only seems correct for valid unicode strings, which does not cover all DOMStrings.


Sure, they're checking for correctness. And it's really only about 15 lines.

Browsers do the same thing with WindowBase64, though it's specified as DOMString, in practice (as the notes say), it's unicode.
http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#atob

Web Storage, also, only works with unicode.

-Charles

Reply via email to