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
[email protected]
https://mail.mozilla.org/listinfo/es-discuss