Standard builtins' prototypes and toString
Mark S. Miller
erights at google.com
Thu Jun 12 09:08:13 PDT 2014
If Date.prototype is a Date, then we need additional special logic to
ensure that freezing it actually makes it immutable. Otherwise, we have a
hard to plug global communications channel. This was the reason why
RegExp.prototype.compile had an [[Extensible]] check, and why we can remove
the check if RegExp.prototype is no longer a RegExp.
On Thu, Jun 12, 2014 at 8:57 AM, Erik Arvidsson <erik.arvidsson at gmail.com>
> On Thu Jun 12 2014 at 11:28:12 AM, C. Scott Ananian <ecmascript at cscott.net>
>> Date.prototype.[[DateValue]] exist, and be set to the epoch or some
> 1. Let date be the this value.
> 2. If Type(date) is not Object then, throw a TypeError exception.
> 3. If date does not have a [[DateValue]] internal slot, then let tv be NaN
> 4. Else let tv be this time value.
> 5. Return ToDateString(tv).
> Allen, what is the benefit to do `super.toString()` instead?
>> This problem actually seems to be an artifact of the way that
>> [[Construct]] works in ES6 -- but the takeaway is that prototypes of a
>> class are not themselves instances of the class. It's not surprising
>> that methods of the class thus don't work on the prototype. I'd vote
>> es-discuss mailing list
>> es-discuss at mozilla.org
> es-discuss mailing list
> es-discuss at mozilla.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the es-discuss