On 2/20/16 2:36 AM, Peter Thatcher wrote: > On Fri, Feb 19, 2016 at 10:50 PM, Martin Thomson > <martin.thomson@gmail.com <mailto:martin.thomson@gmail.com>> wrote: > > On 19 February 2016 at 21:50, Peter Thatcher <pthatcher@google.com > <mailto:pthatcher@google.com>> wrote: > > But how does converting to an enum help at all? Wouldn't > undefined then > > just get turned into an enum value, which is truthy? > > An enum ensures that all valid values that are equally truthy, so > truthy/falsy becomes irrelevant. Yes, the default is truthy, but so > is every valid value. > > > So pc.createDataChannel("label", {ordered: undefined}) is still going > to be ordered, right? Right. > So how are we better off with an enum in this case? Because there's precedent for expecting undefined to be interpreted as false [1], and no such precedent for strings? > > And if a truthy value of a default is discouraged, then are the only > > encouraged defaults the falsy ones (false/null/""/0/NaN)? > > This is only relevant for dictionary parameters with Boolean types. > [1] https://developer.mozilla.org/en-US/docs/Glossary/Falsy .: Jan-Ivar :.Received on Sunday, 21 February 2016 16:01:46 UTC
This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:26:35 UTC