On Mon, Nov 11, 2013 at 9:21 AM, Allen Wirfs-Brock
<al...@wirfs-brock.com> wrote:
> On Nov 11, 2013, at 6:10 AM, Mark S. Miller wrote:
>> On Sun, Nov 10, 2013 at 11:33 PM, Corey Frang <gnar...@gmail.com> wrote:
>>> Just to provide another way of working around it:
>>>
>>> var empty = {}; // or even a symbol?
>>>
>>> function splice(start = empty, count = 0, ...items) {
>>>   if (start === empty) { ...
>>> }
>>
>> That is excellent! Has all the upsides of the best of the other proposals
>> and none of the downsides.
>
> No, this doesn't work because then both
>      [1,2,3].splice()
>      [1.2.3].splice(undefined)
>
> will both result in start === empty.  But for web compatibility they must be
> treated differently.

Right.  The one and only way to test for missing args different from
undefined is to use a rest arg and test length, as demonstrated
earlier in this thread.

~TJ
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to