On Tue, Oct 25, 2011 at 12:57 PM, Tab Atkins Jr. <jackalm...@gmail.com>wrote:
> On Tue, Oct 25, 2011 at 12:53 PM, Ojan Vafai <o...@chromium.org> wrote: > > The new API is smaller and simpler. Less to implement and less for web > > developers to understand. If it can meet all our use-cases without > > significant performance problems, then it's a win and we should do it. > > > > For line-endings, you could have the Blob constructor also take an > optional > > endings argument: > > new Blob(String|Array|Blob|ArrayBuffer data, [optional] String > contentType, > > [optional] String endings); > > I believe (or at least, I maintain) that we're trying to do > dictionaries for this sort of thing. Multiple optional arguments are > *horrible* unless they are truly, actually, order-dependent such that > you wouldn't ever specify a later one without already specifying a > former one. > I agree actually. So, it could be any of the following: 1. new Blob(data, [optional] options) 2. new Blob(options, data...) 3. new Blob([optional] dataAndOptions) I don't feel strongly, but option 1 seems best to me since it allows simple usages like 'new Blob("foo")'. On the other hand, option 2 lets you not have to create an array to append multiple elements to the Blob.