On Fri, Dec 14, 2012 at 2:02 PM, Allen Wirfs-Brock <[email protected]>wrote:
> > On Dec 14, 2012, at 10:45 AM, Domenic Denicola wrote: > > From: [email protected] [[email protected]] on > behalf of Nathan Wall [[email protected]] > > Sent: Friday, December 14, 2012 13:34 > > > On another note, I do sort of wonder why `Number.isNaN` is coming into the > language now at the same time as the `is` operator and `Object.is`. It > seems teaching people (and getting them to remember long-term) the nuances > of `isNaN` and `Number.isNaN` will be more difficult than just teaching > people to use `x is NaN` in ES6 or `Object.is(x, NaN)` in an ES3/5 + ES6 > shims environment. > > > `is` operator is dead :( :( :( > > (Someone want to find a link to the minutes that killed it? I keep having > to correct people on this.) > > > I may be wrong, but I don't think it was ever formally killed by TC39. I > was discussed here where the consensus was to kill it, but I don't recall > an actual discussion at a TC39 meeting. That's why I haven't deleted the > is operator from the draft yet. It's something I keep intending to verify > at a meeting, but it keeps getting lost in the weeds. > Confirmed. There is no such discussion on record from a TC39 meeting. Someone said out loud at the last meeting but it never made it to the agenda. I will formally add it to the agenda for January Rick > > BTW, I think there are probably other related issues that need to be > discussed/resolved at that level. For example, is SameValue really want we > want for Map/Set equivalence (the -0 different from +0 issue), did we agree > to parameterize the equivalance operator for Map/Set?, and the question > about the need for Number.isNaN if we have Object.is available. > ps. These too. > > > Allen > > > > There's not an `isNull` or `isUndefined`. The only reason `isNaN` was > needed was because `===` didn't work with `NaN`, but `is` does. > > > This is pretty reasonable, actually. The only argument I can see is that > `array.filter(Number.isNaN)` is shorter than `array.filter(x => Object.is(x, > NaN))`. > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss > > > > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss > >
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

