[whatwg] base64 entities
And Clover
and-py at doxdesk.com
Thu Aug 26 10:31:01 PDT 2010
On 2010-08-26 13:58:24, Julian Reschke wrote:
> Not convinced. There's already one way to escape these things, and this
> is supported in all UAs.
Totally agree. If a web author isn't sufficiently experienced to
remember to call an HTML-encoding function, there is no reason to
believe they'll think to call a base64-encoding function either. The
proposal adds more parsing complexity (and XML incompatibility) for no
obvious gain.
However, I'm all for making standardised HTML-encoder/decoder and
base64-encoder/decoder functions available at a `window` or ECMAScript
language level.
`atob`/`btoa` do the job, but they're byte encoders not characters; they
expect 'binary' strings where each charCode is the ordinal value of a
byte. That is to say, they `btoa` encodes the input string using
genuine-ISO-8859-1 and not UTF-8. This is necessary for a
general-purpose base64 implementation (otherwise many base64 strings
would not be decodable at all), but may be unexpected.
Is it worth providing a UTF-8-based variant or argument? Otherwise users
would have to convert from UTF-8-misdecoded-as-ISO-8859-1 strings
manually. (That's not difficult, using `decodeURIComponent(escape(s))`,
but this trick isn't obvious or well-known.)
--
And Clover
mailto:and at doxdesk.com
http://www.doxdesk.com/
More information about the whatwg
mailing list