Ah, yes and agreed. That was definitely not relayed in the message below- 
thanks for the clarification, the context does make a difference.

Rick

On Nov 20, 2011, at 1:40 AM, David Herman <dher...@mozilla.com> wrote:

> On Nov 19, 2011, at 5:50 PM, Brendan Eich wrote:
> 
>> On Nov 19, 2011, at 2:20 PM, Rick Waldron wrote:
>> 
>>> Q. We don't use option parameter like that in JS (see previous point for 
>>> actual example)
>>> 
>>> Using an object-as-option parameter is a very common API design pattern in 
>>> real-world JavaScript today - why anyone would say otherwise is 
>>> confounding. 
>> 
>> Right. For example, ES5's property descriptor and property descriptor map 
>> parameters.
> 
> It was me. I didn't say JS doesn't use options objects. I said the G11n 
> library was using them wrong. They were doing:
> 
>     if (!ops) {
>         ops = { foo: defFoo, bar: defBar, baz: defBaz };
>     }
> 
> instead of e.g.:
> 
>     if (!ops)
>         ops = {};
>     if (typeof ops.foo === "undefined")
>         ops.foo = defFoo;
>     if (typeof ops.bar === "undefined")
>         ops.bar = defBar;
>     if (typeof ops.baz === "undefined")
>         ops.baz = defBaz;
> 
> IOW, it shouldn't be all or nothing, but rather each property of the options 
> object is separately optional.
> 
> Dave
> 
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to