- From: Robert Ginda <rginda@chromium.org>
- Date: Tue, 9 Oct 2012 15:18:52 -0700
- To: Boris Zbarsky <bzbarsky@mit.edu>
- Cc: Alec Flett <alecflett@chromium.org>, public-webapps <public-webapps@w3.org>
Received on Tuesday, 9 October 2012 22:19:41 UTC
On Tue, Oct 9, 2012 at 3:11 PM, Boris Zbarsky <bzbarsky@mit.edu> wrote: > On 10/9/12 6:04 PM, Robert Ginda wrote: > >> But I never, ever use the symbol-known-as >> "undefined" in script, since it's actually a write-able variable. >> > > For what it's worth, it's not anymore. It used to be, but current ES > makes it a readonly non-configurable property of the global. Not sure to > what extent UAs have caught up with the spec on that. > > Oh, I wasn't aware of that. I'd still avoid using undefined values to mean "I intentionally don't want to provide a value". Null is more trustworthy for that, because it's not going to show up "on accident". In my own private coding guidelines in my head, I only *test* for undefined. It only appears as an rvalue in very rare cases, and when it does it appears as "(void 0)". Of course in cases like this: > > function foo(undefined) { > // Code using "undefined" here loses > } > > you still have a problem.... > > > I'd suggest also treating null as missing if possible. >> > > In general, or for the specific IDB case? Well my own personal opinion would be in general, but I don't know what kind of repercussions that would have on other specifications and implementations. Rob. > > > -Boris > >
Received on Tuesday, 9 October 2012 22:19:41 UTC