Timothy Flynn
e0c9f58b0c
LibJS: Implement and use the GetSubstitution abstract operation
...
Used by String.prototype.replace, String.prototype.replaceAll, and
RegExp.prototype [ @@replace ].
2021-07-05 23:26:41 +01:00
Timothy Flynn
9f0aef6051
LibJS: Implement most of String.prototype.replaceAll
...
This also renames ErrorType::StringMatchAllNonGlobalRegExp to
ErrorType::StringNonGlobalRegExp (removes "MatchAll") because this error
is now used in the same way from multiple operations.
2021-07-05 01:10:43 +01:00
davidot
36668893a6
LibJS: Add String.prototype.indexOf position argument
2021-06-30 16:08:00 +01:00
Idan Horowitz
596324ae9c
LibJS: Rewrite String.raw() closer to the specification
...
This includes not throwing a custom exception and using the
length_of_array_like abstract operation where required.
2021-06-28 13:27:13 +01:00
Idan Horowitz
2299be474b
LibJS: Add the String.fromCodePoint() method
2021-06-16 10:29:10 +01:00
Timothy Flynn
b6093ae2e3
LibJS: Implement String.prototype.substr according to the spec
...
Fixes #6325
The JavaScript on the HTML Spec site that caused the crash is:
window.location.hash.substr(1)
Of course, window.location.hash can be the empty string. The spec allows
for calling substr(1) on an empty string, but our partial implementation
wasn't handling it properly.
2021-04-15 08:38:19 +02:00
Timothy Flynn
77a601d52e
LibJS: Implement most of String.prototype.replace
2021-04-02 10:48:40 +02:00
Andreas Kling
1db943e146
LibJS: Implement (mostly) String.prototype.match
...
JavaScript has a couple of different ways to run a regular expression
on a string. This adds support for one more. :^)
2021-03-14 11:04:50 +01:00
Linus Groh
2d8362cceb
LibJS: Implement 'Relative Indexing Method' proposal (.at())
...
Still stage 3, but already implemented in major engines and unlikely to
change - there isn't much to change here anyway. :^)
See:
- https://github.com/tc39/proposal-relative-indexing-method
- https://tc39.es/proposal-relative-indexing-method/
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at
2021-03-12 19:01:08 +01:00
Andreas Kling
13d7c09125
Libraries: Move to Userland/Libraries/
2021-01-12 12:17:46 +01:00