On 1/11/17 3:12 PM, Isiah Meadows wrote:
Okay. The error stack being constructed that early is odd, though.

I'm not sure I follow. The error stack in SpiderMonkey and V8 (and JavaScriptCore too, afaict) is captured at the point when the Error object is created. The captured thing is information that can be used to construct a stack string later.

Then getting .stack constructs the stack string. This operation is somewhat expensive, so is deferred until someone asks.

In V8, the stringification process includes an explicit script-modifiable hook: the "prepareStackTrace" property of the Error constructor.

Is the odd part the stack capture during Error object construction? Were you expecting it to only be captured at the throw point?

-Boris
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to