Le 23 sept. 2014 à 16:35, C. Scott Ananian <[email protected]> a écrit :
> On Tue, Sep 23, 2014 at 10:04 AM, Claude Pache <[email protected]> wrote: >> Another idea is to to define a variant of the `RegExp.prototype.exec()` >> method, that does the Right Thing (doesn't read/write stuff on the RegExp >> instance, nor on the RegExp global, nor I don't know where): >> >> RegExp.prototype.run (str, params): >> >> Do what is currently specified for `RegExp.prototype.exec`, except >> that: >> >> * global, sticky and lastIndex properties are read and written on >> `params` instead of `this` >> * implementations are not allowed to extend that method in order >> to mess with `RegExp`, etc. >> >> All other (legacy) methods are rewritten in terms of `RE.p.run` (in the >> current ES6 draft, they are mostly written in terms of `RE.p.exec`). > > +1. Deprecating the side-effects of the legacy methods might be tricky > though. > --scott I think that "deprecating" is a word that the web hardly understand. For instance, in the spec, `String.prototype.blink` (yuck!) isn't marked as "deprecated", but as "mandatory for web browsers". In our case, `.exec()`, `.match()`, etc. will still need to support some legacy stuff. Brand new methods will not. —Claude _______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

