From 6d92d142e5aeb867b89c4185b00be5de51b25256 Mon Sep 17 00:00:00 2001 From: Michael Dyck Date: Wed, 24 Nov 2021 15:22:11 -0500 Subject: [PATCH] Intrinsic functions: Don't repeat the parameter list in the preamble (1) The clause that defines an intrinsic function (other than an acccessor function) gives its parameter list in the clause heading. Often, the preamble re-states the parameter list. This commit (and the next) deletes those repeats. (See Issue #2576 for justification.) In this commit, we handle all the simple cases where nothing is lost by deleting the repeat. --- spec.html | 342 +++++++++++++++++++++++++++--------------------------- 1 file changed, 171 insertions(+), 171 deletions(-) diff --git a/spec.html b/spec.html index 414d8944aa1..aa700586556 100644 --- a/spec.html +++ b/spec.html @@ -28606,7 +28606,7 @@

Function Properties of the Global Object

eval ( _x_ )

-

The `eval` function is the %eval% intrinsic object. When the `eval` function is called with one argument _x_, the following steps are taken:

+

The `eval` function is the %eval% intrinsic object. When the `eval` function is called, the following steps are taken:

1. Assert: The execution context stack has at least two elements. 1. Let _callerContext_ be the second to top element of the execution context stack. @@ -28815,7 +28815,7 @@

isFinite ( _number_ )

-

The `isFinite` function is the %isFinite% intrinsic object. When the `isFinite` function is called with one argument _number_, the following steps are taken:

+

The `isFinite` function is the %isFinite% intrinsic object. When the `isFinite` function is called, the following steps are taken:

1. Let _num_ be ? ToNumber(_number_). 1. If _num_ is *NaN*, *+∞*𝔽, or *-∞*𝔽, return *false*. @@ -28825,7 +28825,7 @@

isFinite ( _number_ )

isNaN ( _number_ )

-

The `isNaN` function is the %isNaN% intrinsic object. When the `isNaN` function is called with one argument _number_, the following steps are taken:

+

The `isNaN` function is the %isNaN% intrinsic object. When the `isNaN` function is called, the following steps are taken:

1. Let _num_ be ? ToNumber(_number_). 1. If _num_ is *NaN*, return *true*. @@ -28839,7 +28839,7 @@

isNaN ( _number_ )

parseFloat ( _string_ )

The `parseFloat` function produces a Number value dictated by interpretation of the contents of the _string_ argument as a decimal literal.

-

The `parseFloat` function is the %parseFloat% intrinsic object. When the `parseFloat` function is called with one argument _string_, the following steps are taken:

+

The `parseFloat` function is the %parseFloat% intrinsic object. When the `parseFloat` function is called, the following steps are taken:

1. Let _inputString_ be ? ToString(_string_). 1. Let _trimmedString_ be ! TrimString(_inputString_, ~start~). @@ -29040,7 +29040,7 @@

decodeURI ( _encodedURI_ )

The `decodeURI` function computes a new version of a URI in which each escape sequence and UTF-8 encoding of the sort that might be introduced by the `encodeURI` function is replaced with the UTF-16 encoding of the code points that it represents. Escape sequences that could not have been introduced by `encodeURI` are not replaced.

-

The `decodeURI` function is the %decodeURI% intrinsic object. When the `decodeURI` function is called with one argument _encodedURI_, the following steps are taken:

+

The `decodeURI` function is the %decodeURI% intrinsic object. When the `decodeURI` function is called, the following steps are taken:

1. Let _uriString_ be ? ToString(_encodedURI_). 1. Let _reservedURISet_ be a String containing one instance of each code unit valid in |uriReserved| plus *"#"*. @@ -29054,7 +29054,7 @@

decodeURI ( _encodedURI_ )

decodeURIComponent ( _encodedURIComponent_ )

The `decodeURIComponent` function computes a new version of a URI in which each escape sequence and UTF-8 encoding of the sort that might be introduced by the `encodeURIComponent` function is replaced with the UTF-16 encoding of the code points that it represents.

-

The `decodeURIComponent` function is the %decodeURIComponent% intrinsic object. When the `decodeURIComponent` function is called with one argument _encodedURIComponent_, the following steps are taken:

+

The `decodeURIComponent` function is the %decodeURIComponent% intrinsic object. When the `decodeURIComponent` function is called, the following steps are taken:

1. Let _componentString_ be ? ToString(_encodedURIComponent_). 1. Let _reservedURIComponentSet_ be the empty String. @@ -29065,7 +29065,7 @@

decodeURIComponent ( _encodedURIComponent_ )

encodeURI ( _uri_ )

The `encodeURI` function computes a new version of a UTF-16 encoded () URI in which each instance of certain code points is replaced by one, two, three, or four escape sequences representing the UTF-8 encoding of the code points.

-

The `encodeURI` function is the %encodeURI% intrinsic object. When the `encodeURI` function is called with one argument _uri_, the following steps are taken:

+

The `encodeURI` function is the %encodeURI% intrinsic object. When the `encodeURI` function is called, the following steps are taken:

1. Let _uriString_ be ? ToString(_uri_). 1. Let _unescapedURISet_ be a String containing one instance of each code unit valid in |uriReserved| and |uriUnescaped| plus *"#"*. @@ -29079,7 +29079,7 @@

encodeURI ( _uri_ )

encodeURIComponent ( _uriComponent_ )

The `encodeURIComponent` function computes a new version of a UTF-16 encoded () URI in which each instance of certain code points is replaced by one, two, three, or four escape sequences representing the UTF-8 encoding of the code point.

-

The `encodeURIComponent` function is the %encodeURIComponent% intrinsic object. When the `encodeURIComponent` function is called with one argument _uriComponent_, the following steps are taken:

+

The `encodeURIComponent` function is the %encodeURIComponent% intrinsic object. When the `encodeURIComponent` function is called, the following steps are taken:

1. Let _componentString_ be ? ToString(_uriComponent_). 1. Let _unescapedURIComponentSet_ be a String containing one instance of each code unit valid in |uriUnescaped|. @@ -29337,7 +29337,7 @@

The Object Constructor

Object ( [ _value_ ] )

-

When the `Object` function is called with optional argument _value_, the following steps are taken:

+

When the `Object` function is called, the following steps are taken:

1. If NewTarget is neither *undefined* nor the active function, then 1. Return ? OrdinaryCreateFromConstructor(NewTarget, *"%Object.prototype%"*). @@ -29439,7 +29439,7 @@

Object.defineProperty ( _O_, _P_, _Attributes_ )

Object.entries ( _O_ )

-

When the `entries` function is called with argument _O_, the following steps are taken:

+

When the `entries` function is called, the following steps are taken:

1. Let _obj_ be ? ToObject(_O_). 1. Let _nameList_ be ? EnumerableOwnPropertyNames(_obj_, ~key+value~). @@ -29460,7 +29460,7 @@

Object.freeze ( _O_ )

Object.fromEntries ( _iterable_ )

-

When the `fromEntries` function is called with argument _iterable_, the following steps are taken:

+

When the `fromEntries` function is called, the following steps are taken:

1. Perform ? RequireObjectCoercible(_iterable_). 1. Let _obj_ be OrdinaryObjectCreate(%Object.prototype%). @@ -29513,7 +29513,7 @@

Object.getOwnPropertyNames ( _O_ )

Object.getOwnPropertySymbols ( _O_ )

-

When the `getOwnPropertySymbols` function is called with argument _O_, the following steps are taken:

+

When the `getOwnPropertySymbols` function is called, the following steps are taken:

1. Return CreateArrayFromList(? GetOwnPropertyKeys(_O_, ~symbol~)). @@ -29541,7 +29541,7 @@

Object.getPrototypeOf ( _O_ )

-

When the `getPrototypeOf` function is called with argument _O_, the following steps are taken:

+

When the `getPrototypeOf` function is called, the following steps are taken:

1. Let _obj_ be ? ToObject(_O_). 1. Return ? _obj_.[[GetPrototypeOf]](). @@ -29560,7 +29560,7 @@

Object.hasOwn ( _O_, _P_ )

Object.is ( _value1_, _value2_ )

-

When the `is` function is called with arguments _value1_ and _value2_, the following steps are taken:

+

When the `is` function is called, the following steps are taken:

1. Return SameValue(_value1_, _value2_). @@ -29568,7 +29568,7 @@

Object.is ( _value1_, _value2_ )

Object.isExtensible ( _O_ )

-

When the `isExtensible` function is called with argument _O_, the following steps are taken:

+

When the `isExtensible` function is called, the following steps are taken:

1. If Type(_O_) is not Object, return *false*. 1. Return ? IsExtensible(_O_). @@ -29577,7 +29577,7 @@

Object.isExtensible ( _O_ )

Object.isFrozen ( _O_ )

-

When the `isFrozen` function is called with argument _O_, the following steps are taken:

+

When the `isFrozen` function is called, the following steps are taken:

1. If Type(_O_) is not Object, return *true*. 1. Return ? TestIntegrityLevel(_O_, ~frozen~). @@ -29586,7 +29586,7 @@

Object.isFrozen ( _O_ )

Object.isSealed ( _O_ )

-

When the `isSealed` function is called with argument _O_, the following steps are taken:

+

When the `isSealed` function is called, the following steps are taken:

1. If Type(_O_) is not Object, return *true*. 1. Return ? TestIntegrityLevel(_O_, ~sealed~). @@ -29595,7 +29595,7 @@

Object.isSealed ( _O_ )

Object.keys ( _O_ )

-

When the `keys` function is called with argument _O_, the following steps are taken:

+

When the `keys` function is called, the following steps are taken:

1. Let _obj_ be ? ToObject(_O_). 1. Let _nameList_ be ? EnumerableOwnPropertyNames(_obj_, ~key~). @@ -29633,7 +29633,7 @@

Object.seal ( _O_ )

Object.setPrototypeOf ( _O_, _proto_ )

-

When the `setPrototypeOf` function is called with arguments _O_ and _proto_, the following steps are taken:

+

When the `setPrototypeOf` function is called, the following steps are taken:

1. Set _O_ to ? RequireObjectCoercible(_O_). 1. If Type(_proto_) is neither Object nor Null, throw a *TypeError* exception. @@ -29646,7 +29646,7 @@

Object.setPrototypeOf ( _O_, _proto_ )

Object.values ( _O_ )

-

When the `values` function is called with argument _O_, the following steps are taken:

+

When the `values` function is called, the following steps are taken:

1. Let _obj_ be ? ToObject(_O_). 1. Let _nameList_ be ? EnumerableOwnPropertyNames(_obj_, ~value~). @@ -29672,7 +29672,7 @@

Object.prototype.constructor

Object.prototype.hasOwnProperty ( _V_ )

-

When the `hasOwnProperty` method is called with argument _V_, the following steps are taken:

+

When the `hasOwnProperty` method is called, the following steps are taken:

1. [id="step-hasownproperty-topropertykey"] Let _P_ be ? ToPropertyKey(_V_). 1. [id="step-hasownproperty-toobject"] Let _O_ be ? ToObject(*this* value). @@ -29685,7 +29685,7 @@

Object.prototype.hasOwnProperty ( _V_ )

Object.prototype.isPrototypeOf ( _V_ )

-

When the `isPrototypeOf` method is called with argument _V_, the following steps are taken:

+

When the `isPrototypeOf` method is called, the following steps are taken:

1. [id="step-isprototypeof-check-object"] If Type(_V_) is not Object, return *false*. 1. [id="step-isprototypeof-toobject"] Let _O_ be ? ToObject(*this* value). @@ -29701,7 +29701,7 @@

Object.prototype.isPrototypeOf ( _V_ )

Object.prototype.propertyIsEnumerable ( _V_ )

-

When the `propertyIsEnumerable` method is called with argument _V_, the following steps are taken:

+

When the `propertyIsEnumerable` method is called, the following steps are taken:

1. [id="step-propertyisenumerable-topropertykey"] Let _P_ be ? ToPropertyKey(_V_). 1. [id="step-propertyisenumerable-toobject"] Let _O_ be ? ToObject(*this* value). @@ -29800,7 +29800,7 @@

Legacy Object.prototype Accessor Methods

Object.prototype.__defineGetter__ ( _P_, _getter_ )

-

When the `__defineGetter__` method is called with arguments _P_ and _getter_, the following steps are taken:

+

When the `__defineGetter__` method is called, the following steps are taken:

1. Let _O_ be ? ToObject(*this* value). 1. If IsCallable(_getter_) is *false*, throw a *TypeError* exception. @@ -29813,7 +29813,7 @@

Object.prototype.__defineGetter__ ( _P_, _getter_ )

Object.prototype.__defineSetter__ ( _P_, _setter_ )

-

When the `__defineSetter__` method is called with arguments _P_ and _setter_, the following steps are taken:

+

When the `__defineSetter__` method is called, the following steps are taken:

1. Let _O_ be ? ToObject(*this* value). 1. If IsCallable(_setter_) is *false*, throw a *TypeError* exception. @@ -29826,7 +29826,7 @@

Object.prototype.__defineSetter__ ( _P_, _setter_ )

Object.prototype.__lookupGetter__ ( _P_ )

-

When the `__lookupGetter__` method is called with argument _P_, the following steps are taken:

+

When the `__lookupGetter__` method is called, the following steps are taken:

1. Let _O_ be ? ToObject(*this* value). 1. Let _key_ be ? ToPropertyKey(_P_). @@ -29842,7 +29842,7 @@

Object.prototype.__lookupGetter__ ( _P_ )

Object.prototype.__lookupSetter__ ( _P_ )

-

When the `__lookupSetter__` method is called with argument _P_, the following steps are taken:

+

When the `__lookupSetter__` method is called, the following steps are taken:

1. Let _O_ be ? ToObject(*this* value). 1. Let _key_ be ? ToPropertyKey(_P_). @@ -30029,7 +30029,7 @@

Properties of the Function Prototype Object

Function.prototype.apply ( _thisArg_, _argArray_ )

-

When the `apply` method is called with arguments _thisArg_ and _argArray_, the following steps are taken:

+

When the `apply` method is called, the following steps are taken:

1. Let _func_ be the *this* value. 1. If IsCallable(_func_) is *false*, throw a *TypeError* exception. @@ -30050,7 +30050,7 @@

Function.prototype.apply ( _thisArg_, _argArray_ )

Function.prototype.bind ( _thisArg_, ..._args_ )

-

When the `bind` method is called with argument _thisArg_ and zero or more _args_, it performs the following steps:

+

When the `bind` method is called, it performs the following steps:

1. Let _Target_ be the *this* value. 1. If IsCallable(_Target_) is *false*, throw a *TypeError* exception. @@ -30083,7 +30083,7 @@

Function.prototype.bind ( _thisArg_, ..._args_ )

Function.prototype.call ( _thisArg_, ..._args_ )

-

When the `call` method is called with argument _thisArg_ and zero or more _args_, the following steps are taken:

+

When the `call` method is called, the following steps are taken:

1. Let _func_ be the *this* value. 1. If IsCallable(_func_) is *false*, throw a *TypeError* exception. @@ -30127,7 +30127,7 @@

Function.prototype.toString ( )

Function.prototype [ @@hasInstance ] ( _V_ )

-

When the `@@hasInstance` method is called with value _V_, the following steps are taken:

+

When the `@@hasInstance` method is called, the following steps are taken:

1. Let _F_ be the *this* value. 1. Return ? OrdinaryHasInstance(_F_, _V_). @@ -30209,7 +30209,7 @@

The Boolean Constructor

Boolean ( _value_ )

-

When `Boolean` is called with argument _value_, the following steps are taken:

+

When `Boolean` is called, the following steps are taken:

1. Let _b_ be ToBoolean(_value_). 1. If NewTarget is *undefined*, return _b_. @@ -30300,7 +30300,7 @@

The Symbol Constructor

Symbol ( [ _description_ ] )

-

When `Symbol` is called with optional argument _description_, the following steps are taken:

+

When `Symbol` is called, the following steps are taken:

1. If NewTarget is not *undefined*, throw a *TypeError* exception. 1. If _description_ is *undefined*, let _descString_ be *undefined*. @@ -30326,7 +30326,7 @@

Symbol.asyncIterator

Symbol.for ( _key_ )

-

When `Symbol.for` is called with argument _key_ it performs the following steps:

+

When `Symbol.for` is called, it performs the following steps:

1. Let _stringKey_ be ? ToString(_key_). 1. For each element _e_ of the GlobalSymbolRegistry List, do @@ -30396,7 +30396,7 @@

Symbol.iterator

Symbol.keyFor ( _sym_ )

-

When `Symbol.keyFor` is called with argument _sym_ it performs the following steps:

+

When `Symbol.keyFor` is called, it performs the following steps:

1. If Type(_sym_) is not Symbol, throw a *TypeError* exception. 1. For each element _e_ of the GlobalSymbolRegistry List (see ), do @@ -30537,7 +30537,7 @@

Symbol.prototype.valueOf ( )

Symbol.prototype [ @@toPrimitive ] ( _hint_ )

This method is called by ECMAScript language operators to convert a Symbol object to a primitive value.

-

When the `@@toPrimitive` method is called with argument _hint_, the following steps are taken:

+

When the `@@toPrimitive` method is called, the following steps are taken:

1. Return ? thisSymbolValue(*this* value). @@ -30578,7 +30578,7 @@

The Error Constructor

Error ( _message_ [ , _options_ ] )

-

When the `Error` function is called with argument _message_ and optional argument _options_, the following steps are taken:

+

When the `Error` function is called, the following steps are taken:

1. If NewTarget is *undefined*, let _newTarget_ be the active function object; else let _newTarget_ be NewTarget. 1. Let _O_ be ? OrdinaryCreateFromConstructor(_newTarget_, *"%Error.prototype%"*, « [[ErrorData]] »). @@ -30709,7 +30709,7 @@

The _NativeError_ Constructors

_NativeError_ ( _message_ [ , _options_ ] )

-

When a _NativeError_ function is called with argument _message_ and optional argument _options_, the following steps are taken:

+

When a _NativeError_ function is called, the following steps are taken:

1. If NewTarget is *undefined*, let _newTarget_ be the active function object; else let _newTarget_ be NewTarget. 1. [id="step-nativerror-ordinarycreatefromconstructor"] Let _O_ be ? OrdinaryCreateFromConstructor(_newTarget_, "%NativeError.prototype%", « [[ErrorData]] »). @@ -30785,7 +30785,7 @@

The AggregateError Constructor

AggregateError ( _errors_, _message_ [ , _options_ ] )

-

When the *AggregateError* function is called with arguments _errors_ and _message_ and optional argument _options_, the following steps are taken:

+

When the *AggregateError* function is called, the following steps are taken:

1. If NewTarget is *undefined*, let _newTarget_ be the active function object; else let _newTarget_ be NewTarget. 1. Let _O_ be ? OrdinaryCreateFromConstructor(_newTarget_, *"%AggregateError.prototype%"*, « [[ErrorData]] »). @@ -30891,7 +30891,7 @@

The Number Constructor

Number ( _value_ )

-

When `Number` is called with argument _value_, the following steps are taken:

+

When `Number` is called, the following steps are taken:

1. If _value_ is present, then 1. Let _prim_ be ? ToNumeric(_value_). @@ -30923,7 +30923,7 @@

Number.EPSILON

Number.isFinite ( _number_ )

-

When `Number.isFinite` is called with one argument _number_, the following steps are taken:

+

When `Number.isFinite` is called, the following steps are taken:

1. If Type(_number_) is not Number, return *false*. 1. If _number_ is *NaN*, *+∞*𝔽, or *-∞*𝔽, return *false*. @@ -30933,7 +30933,7 @@

Number.isFinite ( _number_ )

Number.isInteger ( _number_ )

-

When `Number.isInteger` is called with one argument _number_, the following steps are taken:

+

When `Number.isInteger` is called, the following steps are taken:

1. Return IsIntegralNumber(_number_). @@ -30941,7 +30941,7 @@

Number.isInteger ( _number_ )

Number.isNaN ( _number_ )

-

When `Number.isNaN` is called with one argument _number_, the following steps are taken:

+

When `Number.isNaN` is called, the following steps are taken:

1. If Type(_number_) is not Number, return *false*. 1. If _number_ is *NaN*, return *true*. @@ -30954,7 +30954,7 @@

Number.isNaN ( _number_ )

Number.isSafeInteger ( _number_ )

-

When `Number.isSafeInteger` is called with one argument _number_, the following steps are taken:

+

When `Number.isSafeInteger` is called, the following steps are taken:

1. If IsIntegralNumber(_number_) is *true*, then 1. If abs(ℝ(_number_)) ≤ 253 - 1, return *true*. @@ -31242,7 +31242,7 @@

The BigInt Constructor

BigInt ( _value_ )

-

When `BigInt` is called with argument _value_, the following steps are taken:

+

When `BigInt` is called, the following steps are taken:

1. If NewTarget is not *undefined*, throw a *TypeError* exception. 1. Let _prim_ be ? ToPrimitive(_value_, ~number~). @@ -31276,7 +31276,7 @@

Properties of the BigInt Constructor

BigInt.asIntN ( _bits_, _bigint_ )

-

When the `BigInt.asIntN` function is called with two arguments _bits_ and _bigint_, the following steps are taken:

+

When the `BigInt.asIntN` function is called, the following steps are taken:

1. Set _bits_ to ? ToIndex(_bits_). 1. Set _bigint_ to ? ToBigInt(_bigint_). @@ -31287,7 +31287,7 @@

BigInt.asIntN ( _bits_, _bigint_ )

BigInt.asUintN ( _bits_, _bigint_ )

-

When the `BigInt.asUintN` function is called with two arguments _bits_ and _bigint_, the following steps are taken:

+

When the `BigInt.asUintN` function is called, the following steps are taken:

1. Set _bits_ to ? ToIndex(_bits_). 1. Set _bigint_ to ? ToBigInt(_bigint_). @@ -31458,7 +31458,7 @@

Function Properties of the Math Object

Math.abs ( _x_ )

Returns the absolute value of _x_; the result has the same magnitude as _x_ but has positive sign.

-

When the `Math.abs` function is called with argument _x_, the following steps are taken:

+

When the `Math.abs` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, return *NaN*. @@ -31472,7 +31472,7 @@

Math.abs ( _x_ )

Math.acos ( _x_ )

Returns the inverse cosine of _x_. The result is expressed in radians and ranges from *+0*𝔽 to 𝔽(π), inclusive.

-

When the `Math.acos` function is called with argument _x_, the following steps are taken:

+

When the `Math.acos` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ > *1*𝔽, or _n_ < *-1*𝔽, return *NaN*. @@ -31484,7 +31484,7 @@

Math.acos ( _x_ )

Math.acosh ( _x_ )

Returns the inverse hyperbolic cosine of _x_.

-

When the `Math.acosh` function is called with argument _x_, the following steps are taken:

+

When the `Math.acosh` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN* or _n_ is *+∞*𝔽, return _n_. @@ -31497,7 +31497,7 @@

Math.acosh ( _x_ )

Math.asin ( _x_ )

Returns the inverse sine of _x_. The result is expressed in radians and ranges from 𝔽(-π / 2) to 𝔽(π / 2), inclusive.

-

When the `Math.asin` function is called with argument _x_, the following steps are taken:

+

When the `Math.asin` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, or _n_ is *-0*𝔽, return _n_. @@ -31509,7 +31509,7 @@

Math.asin ( _x_ )

Math.asinh ( _x_ )

Returns the inverse hyperbolic sine of _x_.

-

When the `Math.asinh` function is called with argument _x_, the following steps are taken:

+

When the `Math.asinh` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, _n_ is *+∞*𝔽, or _n_ is *-∞*𝔽, return _n_. @@ -31520,7 +31520,7 @@

Math.asinh ( _x_ )

Math.atan ( _x_ )

Returns the inverse tangent of _x_. The result is expressed in radians and ranges from 𝔽(-π / 2) to 𝔽(π / 2), inclusive.

-

When the `Math.atan` function is called with argument _x_, the following steps are taken:

+

When the `Math.atan` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, or _n_ is *-0*𝔽, return _n_. @@ -31533,7 +31533,7 @@

Math.atan ( _x_ )

Math.atanh ( _x_ )

Returns the inverse hyperbolic tangent of _x_.

-

When the `Math.atanh` function is called with argument _x_, the following steps are taken:

+

When the `Math.atanh` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, or _n_ is *-0*𝔽, return _n_. @@ -31547,7 +31547,7 @@

Math.atanh ( _x_ )

Math.atan2 ( _y_, _x_ )

Returns the inverse tangent of the quotient _y_ / _x_ of the arguments _y_ and _x_, where the signs of _y_ and _x_ are used to determine the quadrant of the result. Note that it is intentional and traditional for the two-argument inverse tangent function that the argument named _y_ be first and the argument named _x_ be second. The result is expressed in radians and ranges from -π to +π, inclusive.

-

When the `Math.atan2` function is called with arguments _y_ and _x_, the following steps are taken:

+

When the `Math.atan2` function is called, the following steps are taken:

1. Let _ny_ be ? ToNumber(_y_). 1. Let _nx_ be ? ToNumber(_x_). @@ -31583,7 +31583,7 @@

Math.atan2 ( _y_, _x_ )

Math.cbrt ( _x_ )

Returns the cube root of _x_.

-

When the `Math.cbrt` function is called with argument _x_, the following steps are taken:

+

When the `Math.cbrt` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, _n_ is *+∞*𝔽, or _n_ is *-∞*𝔽, return _n_. @@ -31594,7 +31594,7 @@

Math.cbrt ( _x_ )

Math.ceil ( _x_ )

Returns the smallest (closest to -∞) integral Number value that is not less than _x_. If _x_ is already an integral Number, the result is _x_.

-

When the `Math.ceil` function is called with argument _x_, the following steps are taken:

+

When the `Math.ceil` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, _n_ is *+∞*𝔽, or _n_ is *-∞*𝔽, return _n_. @@ -31609,7 +31609,7 @@

Math.ceil ( _x_ )

Math.clz32 ( _x_ )

-

When the `Math.clz32` function is called with argument _x_, the following steps are taken:

+

When the `Math.clz32` function is called, the following steps are taken:

1. Let _n_ be ? ToUint32(_x_). 1. Let _p_ be the number of leading zero bits in the unsigned 32-bit binary representation of _n_. @@ -31623,7 +31623,7 @@

Math.clz32 ( _x_ )

Math.cos ( _x_ )

Returns the cosine of _x_. The argument is expressed in radians.

-

When the `Math.cos` function is called with argument _x_, the following steps are taken:

+

When the `Math.cos` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+∞*𝔽, or _n_ is *-∞*𝔽, return *NaN*. @@ -31635,7 +31635,7 @@

Math.cos ( _x_ )

Math.cosh ( _x_ )

Returns the hyperbolic cosine of _x_.

-

When the `Math.cosh` function is called with argument _x_, the following steps are taken:

+

When the `Math.cosh` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, return *NaN*. @@ -31651,7 +31651,7 @@

Math.cosh ( _x_ )

Math.exp ( _x_ )

Returns the exponential function of _x_ (_e_ raised to the power of _x_, where _e_ is the base of the natural logarithms).

-

When the `Math.exp` function is called with argument _x_, the following steps are taken:

+

When the `Math.exp` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN* or _n_ is *+∞*𝔽, return _n_. @@ -31664,7 +31664,7 @@

Math.exp ( _x_ )

Math.expm1 ( _x_ )

Returns the result of subtracting 1 from the exponential function of _x_ (_e_ raised to the power of _x_, where _e_ is the base of the natural logarithms). The result is computed in a way that is accurate even when the value of _x_ is close to 0.

-

When the `Math.expm1` function is called with argument _x_, the following steps are taken:

+

When the `Math.expm1` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, or _n_ is *+∞*𝔽, return _n_. @@ -31676,7 +31676,7 @@

Math.expm1 ( _x_ )

Math.floor ( _x_ )

Returns the greatest (closest to +∞) integral Number value that is not greater than _x_. If _x_ is already an integral Number, the result is _x_.

-

When the `Math.floor` function is called with argument _x_, the following steps are taken:

+

When the `Math.floor` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, _n_ is *+∞*𝔽, or _n_ is *-∞*𝔽, return _n_. @@ -31691,7 +31691,7 @@

Math.floor ( _x_ )

Math.fround ( _x_ )

-

When the `Math.fround` function is called with argument _x_, the following steps are taken:

+

When the `Math.fround` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, return *NaN*. @@ -31728,7 +31728,7 @@

Math.hypot ( ..._args_ )

Math.imul ( _x_, _y_ )

-

When `Math.imul` is called with arguments _x_ and _y_, the following steps are taken:

+

When `Math.imul` is called, the following steps are taken:

1. Let _a_ be ℝ(? ToUint32(_x_)). 1. Let _b_ be ℝ(? ToUint32(_y_)). @@ -31740,7 +31740,7 @@

Math.imul ( _x_, _y_ )

Math.log ( _x_ )

Returns the natural logarithm of _x_.

-

When the `Math.log` function is called with argument _x_, the following steps are taken:

+

When the `Math.log` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN* or _n_ is *+∞*𝔽, return _n_. @@ -31754,7 +31754,7 @@

Math.log ( _x_ )

Math.log1p ( _x_ )

Returns the natural logarithm of 1 + _x_. The result is computed in a way that is accurate even when the value of x is close to zero.

-

When the `Math.log1p` function is called with argument _x_, the following steps are taken:

+

When the `Math.log1p` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, or _n_ is *+∞*𝔽, return _n_. @@ -31767,7 +31767,7 @@

Math.log1p ( _x_ )

Math.log10 ( _x_ )

Returns the base 10 logarithm of _x_.

-

When the `Math.log10` function is called with argument _x_, the following steps are taken:

+

When the `Math.log10` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN* or _n_ is *+∞*𝔽, return _n_. @@ -31781,7 +31781,7 @@

Math.log10 ( _x_ )

Math.log2 ( _x_ )

Returns the base 2 logarithm of _x_.

-

When the `Math.log2` function is called with argument _x_, the following steps are taken:

+

When the `Math.log2` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN* or _n_ is *+∞*𝔽, return _n_. @@ -31838,7 +31838,7 @@

Math.min ( ..._args_ )

Math.pow ( _base_, _exponent_ )

-

When the `Math.pow` function is called with arguments _base_ and _exponent_, the following steps are taken:

+

When the `Math.pow` function is called, the following steps are taken:

1. Set _base_ to ? ToNumber(_base_). 1. Set _exponent_ to ? ToNumber(_exponent_). @@ -31848,14 +31848,14 @@

Math.pow ( _base_, _exponent_ )

Math.random ( )

-

Returns a Number value with positive sign, greater than or equal to *+0*𝔽 but strictly less than *1*𝔽, chosen randomly or pseudo randomly with approximately uniform distribution over that range, using an implementation-defined algorithm or strategy. This function takes no arguments.

+

Returns a Number value with positive sign, greater than or equal to *+0*𝔽 but strictly less than *1*𝔽, chosen randomly or pseudo randomly with approximately uniform distribution over that range, using an implementation-defined algorithm or strategy.

Each `Math.random` function created for distinct realms must produce a distinct sequence of values from successive calls.

Math.round ( _x_ )

Returns the Number value that is closest to _x_ and is integral. If two integral Numbers are equally close to _x_, then the result is the Number value that is closer to +∞. If _x_ is already integral, the result is _x_.

-

When the `Math.round` function is called with argument _x_, the following steps are taken:

+

When the `Math.round` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, *+∞*𝔽, *-∞*𝔽, or an integral Number, return _n_. @@ -31874,7 +31874,7 @@

Math.round ( _x_ )

Math.sign ( _x_ )

Returns the sign of _x_, indicating whether _x_ is positive, negative, or zero.

-

When the `Math.sign` function is called with argument _x_, the following steps are taken:

+

When the `Math.sign` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, or _n_ is *-0*𝔽, return _n_. @@ -31886,7 +31886,7 @@

Math.sign ( _x_ )

Math.sin ( _x_ )

Returns the sine of _x_. The argument is expressed in radians.

-

When the `Math.sin` function is called with argument _x_, the following steps are taken:

+

When the `Math.sin` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, or _n_ is *-0*𝔽, return _n_. @@ -31898,7 +31898,7 @@

Math.sin ( _x_ )

Math.sinh ( _x_ )

Returns the hyperbolic sine of _x_.

-

When the `Math.sinh` function is called with argument _x_, the following steps are taken:

+

When the `Math.sinh` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, _n_ is *+∞*𝔽, or _n_ is *-∞*𝔽, return _n_. @@ -31912,7 +31912,7 @@

Math.sinh ( _x_ )

Math.sqrt ( _x_ )

Returns the square root of _x_.

-

When the `Math.sqrt` function is called with argument _x_, the following steps are taken:

+

When the `Math.sqrt` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, or _n_ is *+∞*𝔽, return _n_. @@ -31924,7 +31924,7 @@

Math.sqrt ( _x_ )

Math.tan ( _x_ )

Returns the tangent of _x_. The argument is expressed in radians.

-

When the `Math.tan` function is called with argument _x_, the following steps are taken:

+

When the `Math.tan` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, or _n_ is *-0*𝔽, return _n_. @@ -31936,7 +31936,7 @@

Math.tan ( _x_ )

Math.tanh ( _x_ )

Returns the hyperbolic tangent of _x_.

-

When the `Math.tanh` function is called with argument _x_, the following steps are taken:

+

When the `Math.tanh` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, or _n_ is *-0*𝔽, return _n_. @@ -31952,7 +31952,7 @@

Math.tanh ( _x_ )

Math.trunc ( _x_ )

Returns the integral part of the number _x_, removing any fractional digits. If _x_ is already integral, the result is _x_.

-

When the `Math.trunc` function is called with argument _x_, the following steps are taken:

+

When the `Math.trunc` function is called, the following steps are taken:

1. Let _n_ be ? ToNumber(_x_). 1. If _n_ is *NaN*, _n_ is *+0*𝔽, _n_ is *-0*𝔽, _n_ is *+∞*𝔽, or _n_ is *-∞*𝔽, return _n_. @@ -33020,7 +33020,7 @@

Date.prototype.toISOString ( )

Date.prototype.toJSON ( _key_ )

This method provides a String representation of a Date for use by `JSON.stringify` ().

-

When the `toJSON` method is called with argument _key_, the following steps are taken:

+

When the `toJSON` method is called, the following steps are taken:

1. Let _O_ be ? ToObject(*this* value). 1. Let _tv_ be ? ToPrimitive(_O_, ~number~). @@ -33362,7 +33362,7 @@

Date.prototype.valueOf ( )

Date.prototype [ @@toPrimitive ] ( _hint_ )

This method is called by ECMAScript language operators to convert a Date to a primitive value. The allowed values for _hint_ are *"default"*, *"number"*, and *"string"*. Dates are unique among built-in ECMAScript object in that they treat *"default"* as being equivalent to *"string"*, All other built-in ECMAScript objects treat *"default"* as being equivalent to *"number"*.

-

When the `@@toPrimitive` method is called with argument _hint_, the following steps are taken:

+

When the `@@toPrimitive` method is called, the following steps are taken:

1. Let _O_ be the *this* value. 1. If Type(_O_) is not Object, throw a *TypeError* exception. @@ -33404,7 +33404,7 @@

The String Constructor

String ( _value_ )

-

When `String` is called with argument _value_, the following steps are taken:

+

When `String` is called, the following steps are taken:

1. If _value_ is not present, let _s_ be the empty String. 1. Else, @@ -33532,7 +33532,7 @@

String.prototype.charAt ( _pos_ )

Returns a single element String containing the code unit at index _pos_ within the String value resulting from converting this object to a String. If there is no element at that index, the result is the empty String. The result is a String value, not a String object.

If `pos` is an integral Number, then the result of `x.charAt(pos)` is equivalent to the result of `x.substring(pos, pos + 1)`.

-

When the `charAt` method is called with one argument _pos_, the following steps are taken:

+

When the `charAt` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -33551,7 +33551,7 @@

String.prototype.charCodeAt ( _pos_ )

Returns a Number (a non-negative integral Number less than 216) that is the numeric value of the code unit at index _pos_ within the String resulting from converting this object to a String. If there is no element at that index, the result is *NaN*.

-

When the `charCodeAt` method is called with one argument _pos_, the following steps are taken:

+

When the `charCodeAt` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -33570,7 +33570,7 @@

String.prototype.codePointAt ( _pos_ )

Returns a non-negative integral Number less than or equal to *0x10FFFF*𝔽 that is the numeric value of the UTF-16 encoded code point () starting at the string element at index _pos_ within the String resulting from converting this object to a String. If there is no element at that index, the result is *undefined*. If a valid UTF-16 does not begin at _pos_, the result is the code unit at _pos_.

-

When the `codePointAt` method is called with one argument _pos_, the following steps are taken:

+

When the `codePointAt` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -33590,7 +33590,7 @@

String.prototype.concat ( ..._args_ )

When the `concat` method is called it returns the String value consisting of the code units of the *this* value (converted to a String) followed by the code units of each of the arguments converted to a String. The result is a String value, not a String object.

-

When the `concat` method is called with zero or more arguments, the following steps are taken:

+

When the `concat` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -33643,7 +33643,7 @@

String.prototype.endsWith ( _searchString_ [ , _endPosition_ ] )

String.prototype.includes ( _searchString_ [ , _position_ ] )

-

The `includes` method takes two arguments, _searchString_ and _position_, and performs the following steps:

+

The `includes` method performs the following steps:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -33674,7 +33674,7 @@

String.prototype.indexOf ( _searchString_ [ , _position_ ] )

If _searchString_ appears as a substring of the result of converting this object to a String, at one or more indices that are greater than or equal to _position_, then the smallest such index is returned; otherwise, *-1*𝔽 is returned. If _position_ is *undefined*, *+0*𝔽 is assumed, so as to search all of the String.

-

The `indexOf` method takes two arguments, _searchString_ and _position_, and performs the following steps:

+

The `indexOf` method performs the following steps:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -33695,7 +33695,7 @@

String.prototype.lastIndexOf ( _searchString_ [ , _position_ ] )

If _searchString_ appears as a substring of the result of converting this object to a String at one or more indices that are smaller than or equal to _position_, then the greatest such index is returned; otherwise, *-1*𝔽 is returned. If _position_ is *undefined*, the length of the String value is assumed, so as to search all of the String.

-

The `lastIndexOf` method takes two arguments, _searchString_ and _position_, and performs the following steps:

+

The `lastIndexOf` method performs the following steps:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -33720,7 +33720,7 @@

String.prototype.lastIndexOf ( _searchString_ [ , _position_ ] )

String.prototype.localeCompare ( _that_ [ , _reserved1_ [ , _reserved2_ ] ] )

An ECMAScript implementation that includes the ECMA-402 Internationalization API must implement the `localeCompare` method as specified in the ECMA-402 specification. If an ECMAScript implementation does not include the ECMA-402 API the following specification of the `localeCompare` method is used.

-

When the `localeCompare` method is called with argument _that_, it returns a Number other than *NaN* that represents the result of a locale-sensitive String comparison of the *this* value (converted to a String) with _that_ (converted to a String). The two Strings are _S_ and _That_. The two Strings are compared in an implementation-defined fashion. The result is intended to order String values in the sort order specified by a host default locale, and will be negative, zero, or positive, depending on whether _S_ comes before _That_ in the sort order, the Strings are equal, or _S_ comes after _That_ in the sort order, respectively.

+

When the `localeCompare` method is called, it returns a Number other than *NaN* that represents the result of a locale-sensitive String comparison of the *this* value (converted to a String) with _that_ (converted to a String). The two Strings are _S_ and _That_. The two Strings are compared in an implementation-defined fashion. The result is intended to order String values in the sort order specified by a host default locale, and will be negative, zero, or positive, depending on whether _S_ comes before _That_ in the sort order, the Strings are equal, or _S_ comes after _That_ in the sort order, respectively.

Before performing the comparisons, the following steps are performed to prepare the Strings:

1. Let _O_ be ? RequireObjectCoercible(*this* value). @@ -33743,7 +33743,7 @@

String.prototype.localeCompare ( _that_ [ , _reserved1_ [ , _reserved2_ ] ]

String.prototype.match ( _regexp_ )

-

When the `match` method is called with argument _regexp_, the following steps are taken:

+

When the `match` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. If _regexp_ is neither *undefined* nor *null*, then @@ -33785,7 +33785,7 @@

String.prototype.matchAll ( _regexp_ )

String.prototype.normalize ( [ _form_ ] )

-

When the `normalize` method is called with one argument _form_, the following steps are taken:

+

When the `normalize` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -33871,7 +33871,7 @@

String.prototype.repeat ( _count_ )

String.prototype.replace ( _searchValue_, _replaceValue_ )

-

When the `replace` method is called with arguments _searchValue_ and _replaceValue_, the following steps are taken:

+

When the `replace` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. If _searchValue_ is neither *undefined* nor *null*, then @@ -33983,7 +33983,7 @@

String.prototype.replaceAll ( _searchValue_, _replaceValue_ )

-

When the `replaceAll` method is called with arguments _searchValue_ and _replaceValue_, the following steps are taken:

+

When the `replaceAll` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. If _searchValue_ is neither *undefined* nor *null*, then @@ -34027,7 +34027,7 @@

String.prototype.replaceAll ( _searchValue_, _replaceValue_ )

String.prototype.search ( _regexp_ )

-

When the `search` method is called with argument _regexp_, the following steps are taken:

+

When the `search` method is called, the following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. If _regexp_ is neither *undefined* nor *null*, then @@ -34045,7 +34045,7 @@

String.prototype.search ( _regexp_ )

String.prototype.slice ( _start_, _end_ )

-

The `slice` method takes two arguments, _start_ and _end_, and returns a substring of the result of converting this object to a String, starting from index _start_ and running to, but not including, index _end_ (or through the end of the String if _end_ is *undefined*). If _start_ is negative, it is treated as _sourceLength_ + _start_ where _sourceLength_ is the length of the String. If _end_ is negative, it is treated as _sourceLength_ + _end_ where _sourceLength_ is the length of the String. The result is a String value, not a String object. The following steps are taken:

+

The `slice` method returns a substring of the result of converting this object to a String, starting from index _start_ and running to, but not including, index _end_ (or through the end of the String if _end_ is *undefined*). If _start_ is negative, it is treated as _sourceLength_ + _start_ where _sourceLength_ is the length of the String. If _end_ is negative, it is treated as _sourceLength_ + _end_ where _sourceLength_ is the length of the String. The result is a String value, not a String object. The following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -34144,7 +34144,7 @@

String.prototype.startsWith ( _searchString_ [ , _position_ ] )

String.prototype.substring ( _start_, _end_ )

-

The `substring` method takes two arguments, _start_ and _end_, and returns a substring of the result of converting this object to a String, starting from index _start_ and running to, but not including, index _end_ of the String (or through the end of the String if _end_ is *undefined*). The result is a String value, not a String object.

+

The `substring` method returns a substring of the result of converting this object to a String, starting from index _start_ and running to, but not including, index _end_ of the String (or through the end of the String if _end_ is *undefined*). The result is a String value, not a String object.

If either argument is *NaN* or negative, it is replaced with zero; if either argument is larger than the length of the String, it is replaced with the length of the String.

If _start_ is larger than _end_, they are swapped.

The following steps are taken:

@@ -36238,7 +36238,7 @@

get RegExp.prototype.ignoreCase

RegExp.prototype [ @@match ] ( _string_ )

-

When the `@@match` method is called with argument _string_, the following steps are taken:

+

When the `@@match` method is called, the following steps are taken:

1. Let _rx_ be the *this* value. 1. If Type(_rx_) is not Object, throw a *TypeError* exception. @@ -36274,7 +36274,7 @@

RegExp.prototype [ @@match ] ( _string_ )

RegExp.prototype [ @@matchAll ] ( _string_ )

-

When the `@@matchAll` method is called with argument _string_, the following steps are taken:

+

When the `@@matchAll` method is called, the following steps are taken:

1. Let _R_ be the *this* value. 1. If Type(_R_) is not Object, throw a *TypeError* exception. @@ -36305,7 +36305,7 @@

get RegExp.prototype.multiline

RegExp.prototype [ @@replace ] ( _string_, _replaceValue_ )

-

When the `@@replace` method is called with arguments _string_ and _replaceValue_, the following steps are taken:

+

When the `@@replace` method is called, the following steps are taken:

1. Let _rx_ be the *this* value. 1. If Type(_rx_) is not Object, throw a *TypeError* exception. @@ -36375,7 +36375,7 @@

RegExp.prototype [ @@replace ] ( _string_, _replaceValue_ )

RegExp.prototype [ @@search ] ( _string_ )

-

When the `@@search` method is called with argument _string_, the following steps are taken:

+

When the `@@search` method is called, the following steps are taken:

1. Let _rx_ be the *this* value. 1. If Type(_rx_) is not Object, throw a *TypeError* exception. @@ -39503,7 +39503,7 @@

The Map Constructor

Map ( [ _iterable_ ] )

-

When the `Map` function is called with optional argument _iterable_, the following steps are taken:

+

When the `Map` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. Let _map_ be ? OrdinaryCreateFromConstructor(NewTarget, *"%Map.prototype%"*, « [[MapData]] »). @@ -39641,7 +39641,7 @@

Map.prototype.entries ( )

Map.prototype.forEach ( _callbackfn_ [ , _thisArg_ ] )

-

When the `forEach` method is called with one or two arguments, the following steps are taken:

+

When the `forEach` method is called, the following steps are taken:

1. Let _M_ be the *this* value. 1. Perform ? RequireInternalSlot(_M_, [[MapData]]). @@ -39835,7 +39835,7 @@

The Set Constructor

Set ( [ _iterable_ ] )

-

When the `Set` function is called with optional argument _iterable_, the following steps are taken:

+

When the `Set` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. Let _set_ be ? OrdinaryCreateFromConstructor(NewTarget, *"%Set.prototype%"*, « [[SetData]] »). @@ -39960,7 +39960,7 @@

Set.prototype.entries ( )

Set.prototype.forEach ( _callbackfn_ [ , _thisArg_ ] )

-

When the `forEach` method is called with one or two arguments, the following steps are taken:

+

When the `forEach` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Perform ? RequireInternalSlot(_S_, [[SetData]]). @@ -40130,7 +40130,7 @@

The WeakMap Constructor

WeakMap ( [ _iterable_ ] )

-

When the `WeakMap` function is called with optional argument _iterable_, the following steps are taken:

+

When the `WeakMap` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. Let _map_ be ? OrdinaryCreateFromConstructor(NewTarget, *"%WeakMap.prototype%"*, « [[WeakMapData]] »). @@ -40276,7 +40276,7 @@

The WeakSet Constructor

WeakSet ( [ _iterable_ ] )

-

When the `WeakSet` function is called with optional argument _iterable_, the following steps are taken:

+

When the `WeakSet` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. Let _set_ be ? OrdinaryCreateFromConstructor(NewTarget, *"%WeakSet.prototype%"*, « [[WeakSetData]] »). @@ -40731,7 +40731,7 @@

The ArrayBuffer Constructor

ArrayBuffer ( _length_ )

-

When the `ArrayBuffer` function is called with argument _length_, the following steps are taken:

+

When the `ArrayBuffer` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. Let _byteLength_ be ? ToIndex(_length_). @@ -40750,7 +40750,7 @@

Properties of the ArrayBuffer Constructor

ArrayBuffer.isView ( _arg_ )

-

The `isView` function takes one argument _arg_, and performs the following steps:

+

The `isView` function performs the following steps:

1. If Type(_arg_) is not Object, return *false*. 1. If _arg_ has a [[ViewedArrayBuffer]] internal slot, return *true*. @@ -40919,7 +40919,7 @@

The SharedArrayBuffer Constructor

SharedArrayBuffer ( _length_ )

-

When the `SharedArrayBuffer` function is called with argument _length_, the following steps are taken:

+

When the `SharedArrayBuffer` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. Let _byteLength_ be ? ToIndex(_length_). @@ -41108,7 +41108,7 @@

The DataView Constructor

DataView ( _buffer_ [ , _byteOffset_ [ , _byteLength_ ] ] )

-

When the `DataView` function is called with at least one argument _buffer_, the following steps are taken:

+

When the `DataView` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. Perform ? RequireInternalSlot(_buffer_, [[ArrayBufferData]]). @@ -41203,7 +41203,7 @@

DataView.prototype.constructor

DataView.prototype.getBigInt64 ( _byteOffset_ [ , _littleEndian_ ] )

-

When the `getBigInt64` method is called with argument _byteOffset_ and optional argument _littleEndian_, the following steps are taken:

+

When the `getBigInt64` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. Return ? GetViewValue(_v_, _byteOffset_, _littleEndian_, ~BigInt64~). @@ -41212,7 +41212,7 @@

DataView.prototype.getBigInt64 ( _byteOffset_ [ , _littleEndian_ ] )

DataView.prototype.getBigUint64 ( _byteOffset_ [ , _littleEndian_ ] )

-

When the `getBigUint64` method is called with argument _byteOffset_ and optional argument _littleEndian_, the following steps are taken:

+

When the `getBigUint64` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. Return ? GetViewValue(_v_, _byteOffset_, _littleEndian_, ~BigUint64~). @@ -41221,7 +41221,7 @@

DataView.prototype.getBigUint64 ( _byteOffset_ [ , _littleEndian_ ] )

DataView.prototype.getFloat32 ( _byteOffset_ [ , _littleEndian_ ] )

-

When the `getFloat32` method is called with argument _byteOffset_ and optional argument _littleEndian_, the following steps are taken:

+

When the `getFloat32` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41231,7 +41231,7 @@

DataView.prototype.getFloat32 ( _byteOffset_ [ , _littleEndian_ ] )

DataView.prototype.getFloat64 ( _byteOffset_ [ , _littleEndian_ ] )

-

When the `getFloat64` method is called with argument _byteOffset_ and optional argument _littleEndian_, the following steps are taken:

+

When the `getFloat64` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41241,7 +41241,7 @@

DataView.prototype.getFloat64 ( _byteOffset_ [ , _littleEndian_ ] )

DataView.prototype.getInt8 ( _byteOffset_ )

-

When the `getInt8` method is called with argument _byteOffset_, the following steps are taken:

+

When the `getInt8` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. Return ? GetViewValue(_v_, _byteOffset_, *true*, ~Int8~). @@ -41250,7 +41250,7 @@

DataView.prototype.getInt8 ( _byteOffset_ )

DataView.prototype.getInt16 ( _byteOffset_ [ , _littleEndian_ ] )

-

When the `getInt16` method is called with argument _byteOffset_ and optional argument _littleEndian_, the following steps are taken:

+

When the `getInt16` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41260,7 +41260,7 @@

DataView.prototype.getInt16 ( _byteOffset_ [ , _littleEndian_ ] )

DataView.prototype.getInt32 ( _byteOffset_ [ , _littleEndian_ ] )

-

When the `getInt32` method is called with argument _byteOffset_ and optional argument _littleEndian_, the following steps are taken:

+

When the `getInt32` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41270,7 +41270,7 @@

DataView.prototype.getInt32 ( _byteOffset_ [ , _littleEndian_ ] )

DataView.prototype.getUint8 ( _byteOffset_ )

-

When the `getUint8` method is called with argument _byteOffset_, the following steps are taken:

+

When the `getUint8` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. Return ? GetViewValue(_v_, _byteOffset_, *true*, ~Uint8~). @@ -41279,7 +41279,7 @@

DataView.prototype.getUint8 ( _byteOffset_ )

DataView.prototype.getUint16 ( _byteOffset_ [ , _littleEndian_ ] )

-

When the `getUint16` method is called with argument _byteOffset_ and optional argument _littleEndian_, the following steps are taken:

+

When the `getUint16` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41289,7 +41289,7 @@

DataView.prototype.getUint16 ( _byteOffset_ [ , _littleEndian_ ] )

DataView.prototype.getUint32 ( _byteOffset_ [ , _littleEndian_ ] )

-

When the `getUint32` method is called with argument _byteOffset_ and optional argument _littleEndian_, the following steps are taken:

+

When the `getUint32` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41299,7 +41299,7 @@

DataView.prototype.getUint32 ( _byteOffset_ [ , _littleEndian_ ] )

DataView.prototype.setBigInt64 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

-

When the `setBigInt64` method is called with arguments _byteOffset_ and _value_ and optional argument _littleEndian_, the following steps are taken:

+

When the `setBigInt64` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. Return ? SetViewValue(_v_, _byteOffset_, _littleEndian_, ~BigInt64~, _value_). @@ -41308,7 +41308,7 @@

DataView.prototype.setBigInt64 ( _byteOffset_, _value_ [ , _littleEndian_ ]

DataView.prototype.setBigUint64 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

-

When the `setBigUint64` method is called with arguments _byteOffset_ and _value_ and optional argument _littleEndian_, the following steps are taken:

+

When the `setBigUint64` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. Return ? SetViewValue(_v_, _byteOffset_, _littleEndian_, ~BigUint64~, _value_). @@ -41317,7 +41317,7 @@

DataView.prototype.setBigUint64 ( _byteOffset_, _value_ [ , _littleEndian_ ]

DataView.prototype.setFloat32 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

-

When the `setFloat32` method is called with arguments _byteOffset_ and _value_ and optional argument _littleEndian_, the following steps are taken:

+

When the `setFloat32` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41327,7 +41327,7 @@

DataView.prototype.setFloat32 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

DataView.prototype.setFloat64 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

-

When the `setFloat64` method is called with arguments _byteOffset_ and _value_ and optional argument _littleEndian_, the following steps are taken:

+

When the `setFloat64` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41337,7 +41337,7 @@

DataView.prototype.setFloat64 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

DataView.prototype.setInt8 ( _byteOffset_, _value_ )

-

When the `setInt8` method is called with arguments _byteOffset_ and _value_, the following steps are taken:

+

When the `setInt8` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. Return ? SetViewValue(_v_, _byteOffset_, *true*, ~Int8~, _value_). @@ -41346,7 +41346,7 @@

DataView.prototype.setInt8 ( _byteOffset_, _value_ )

DataView.prototype.setInt16 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

-

When the `setInt16` method is called with arguments _byteOffset_ and _value_ and optional argument _littleEndian_, the following steps are taken:

+

When the `setInt16` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41356,7 +41356,7 @@

DataView.prototype.setInt16 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

DataView.prototype.setInt32 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

-

When the `setInt32` method is called with arguments _byteOffset_ and _value_ and optional argument _littleEndian_, the following steps are taken:

+

When the `setInt32` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41366,7 +41366,7 @@

DataView.prototype.setInt32 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

DataView.prototype.setUint8 ( _byteOffset_, _value_ )

-

When the `setUint8` method is called with arguments _byteOffset_ and _value_, the following steps are taken:

+

When the `setUint8` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. Return ? SetViewValue(_v_, _byteOffset_, *true*, ~Uint8~, _value_). @@ -41375,7 +41375,7 @@

DataView.prototype.setUint8 ( _byteOffset_, _value_ )

DataView.prototype.setUint16 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

-

When the `setUint16` method is called with arguments _byteOffset_ and _value_ and optional argument _littleEndian_, the following steps are taken:

+

When the `setUint16` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -41385,7 +41385,7 @@

DataView.prototype.setUint16 ( _byteOffset_, _value_ [ , _littleEndian_ ] )<

DataView.prototype.setUint32 ( _byteOffset_, _value_ [ , _littleEndian_ ] )

-

When the `setUint32` method is called with arguments _byteOffset_ and _value_ and optional argument _littleEndian_, the following steps are taken:

+

When the `setUint32` method is called, the following steps are taken:

1. Let _v_ be the *this* value. 1. If _littleEndian_ is not present, set _littleEndian_ to *false*. @@ -42430,7 +42430,7 @@

The WeakRef Constructor

WeakRef ( _target_ )

-

When the `WeakRef` function is called with argument _target_, the following steps are taken:

+

When the `WeakRef` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. If Type(_target_) is not Object, throw a *TypeError* exception. @@ -42568,7 +42568,7 @@

The FinalizationRegistry Constructor

FinalizationRegistry ( _cleanupCallback_ )

-

When the `FinalizationRegistry` function is called with argument _cleanupCallback_, the following steps are taken:

+

When the `FinalizationRegistry` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. If IsCallable(_cleanupCallback_) is *false*, throw a *TypeError* exception. @@ -43553,7 +43553,7 @@

The Promise Constructor

Promise ( _executor_ )

-

When the `Promise` function is called with argument _executor_, the following steps are taken:

+

When the `Promise` function is called, the following steps are taken:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. If IsCallable(_executor_) is *false*, throw a *TypeError* exception. @@ -44035,7 +44035,7 @@

Properties of the Promise Prototype Object

Promise.prototype.catch ( _onRejected_ )

-

When the `catch` method is called with argument _onRejected_, the following steps are taken:

+

When the `catch` method is called, the following steps are taken:

1. Let _promise_ be the *this* value. 1. Return ? Invoke(_promise_, *"then"*, « *undefined*, _onRejected_ »). @@ -44049,7 +44049,7 @@

Promise.prototype.constructor

Promise.prototype.finally ( _onFinally_ )

-

When the `finally` method is called with argument _onFinally_, the following steps are taken:

+

When the `finally` method is called, the following steps are taken:

1. Let _promise_ be the *this* value. 1. If Type(_promise_) is not Object, throw a *TypeError* exception. @@ -44081,7 +44081,7 @@

Promise.prototype.finally ( _onFinally_ )

Promise.prototype.then ( _onFulfilled_, _onRejected_ )

-

When the `then` method is called with arguments _onFulfilled_ and _onRejected_, the following steps are taken:

+

When the `then` method is called, the following steps are taken:

1. Let _promise_ be the *this* value. 1. If IsPromise(_promise_) is *false*, throw a *TypeError* exception. @@ -45316,7 +45316,7 @@

The Reflect Object

Reflect.apply ( _target_, _thisArgument_, _argumentsList_ )

-

When the `apply` function is called with arguments _target_, _thisArgument_, and _argumentsList_, the following steps are taken:

+

When the `apply` function is called, the following steps are taken:

1. If IsCallable(_target_) is *false*, throw a *TypeError* exception. 1. Let _args_ be ? CreateListFromArrayLike(_argumentsList_). @@ -45327,7 +45327,7 @@

Reflect.apply ( _target_, _thisArgument_, _argumentsList_ )

Reflect.construct ( _target_, _argumentsList_ [ , _newTarget_ ] )

-

When the `construct` function is called with arguments _target_, _argumentsList_, and _newTarget_, the following steps are taken:

+

When the `construct` function is called, the following steps are taken:

1. If IsConstructor(_target_) is *false*, throw a *TypeError* exception. 1. If _newTarget_ is not present, set _newTarget_ to _target_. @@ -45339,7 +45339,7 @@

Reflect.construct ( _target_, _argumentsList_ [ , _newTarget_ ] )

Reflect.defineProperty ( _target_, _propertyKey_, _attributes_ )

-

When the `defineProperty` function is called with arguments _target_, _propertyKey_, and _attributes_, the following steps are taken:

+

When the `defineProperty` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Let _key_ be ? ToPropertyKey(_propertyKey_). @@ -45350,7 +45350,7 @@

Reflect.defineProperty ( _target_, _propertyKey_, _attributes_ )

Reflect.deleteProperty ( _target_, _propertyKey_ )

-

When the `deleteProperty` function is called with arguments _target_ and _propertyKey_, the following steps are taken:

+

When the `deleteProperty` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Let _key_ be ? ToPropertyKey(_propertyKey_). @@ -45360,7 +45360,7 @@

Reflect.deleteProperty ( _target_, _propertyKey_ )

Reflect.get ( _target_, _propertyKey_ [ , _receiver_ ] )

-

When the `get` function is called with arguments _target_, _propertyKey_, and _receiver_, the following steps are taken:

+

When the `get` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Let _key_ be ? ToPropertyKey(_propertyKey_). @@ -45372,7 +45372,7 @@

Reflect.get ( _target_, _propertyKey_ [ , _receiver_ ] )

Reflect.getOwnPropertyDescriptor ( _target_, _propertyKey_ )

-

When the `getOwnPropertyDescriptor` function is called with arguments _target_ and _propertyKey_, the following steps are taken:

+

When the `getOwnPropertyDescriptor` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Let _key_ be ? ToPropertyKey(_propertyKey_). @@ -45383,7 +45383,7 @@

Reflect.getOwnPropertyDescriptor ( _target_, _propertyKey_ )

Reflect.getPrototypeOf ( _target_ )

-

When the `getPrototypeOf` function is called with argument _target_, the following steps are taken:

+

When the `getPrototypeOf` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Return ? _target_.[[GetPrototypeOf]](). @@ -45392,7 +45392,7 @@

Reflect.getPrototypeOf ( _target_ )

Reflect.has ( _target_, _propertyKey_ )

-

When the `has` function is called with arguments _target_ and _propertyKey_, the following steps are taken:

+

When the `has` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Let _key_ be ? ToPropertyKey(_propertyKey_). @@ -45402,7 +45402,7 @@

Reflect.has ( _target_, _propertyKey_ )

Reflect.isExtensible ( _target_ )

-

When the `isExtensible` function is called with argument _target_, the following steps are taken:

+

When the `isExtensible` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Return ? _target_.[[IsExtensible]](). @@ -45411,7 +45411,7 @@

Reflect.isExtensible ( _target_ )

Reflect.ownKeys ( _target_ )

-

When the `ownKeys` function is called with argument _target_, the following steps are taken:

+

When the `ownKeys` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Let _keys_ be ? _target_.[[OwnPropertyKeys]](). @@ -45421,7 +45421,7 @@

Reflect.ownKeys ( _target_ )

Reflect.preventExtensions ( _target_ )

-

When the `preventExtensions` function is called with argument _target_, the following steps are taken:

+

When the `preventExtensions` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Return ? _target_.[[PreventExtensions]](). @@ -45430,7 +45430,7 @@

Reflect.preventExtensions ( _target_ )

Reflect.set ( _target_, _propertyKey_, _V_ [ , _receiver_ ] )

-

When the `set` function is called with arguments _target_, _V_, _propertyKey_, and _receiver_, the following steps are taken:

+

When the `set` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. Let _key_ be ? ToPropertyKey(_propertyKey_). @@ -45442,7 +45442,7 @@

Reflect.set ( _target_, _propertyKey_, _V_ [ , _receiver_ ] )

Reflect.setPrototypeOf ( _target_, _proto_ )

-

When the `setPrototypeOf` function is called with arguments _target_ and _proto_, the following steps are taken:

+

When the `setPrototypeOf` function is called, the following steps are taken:

1. If Type(_target_) is not Object, throw a *TypeError* exception. 1. If Type(_proto_) is not Object and _proto_ is not *null*, throw a *TypeError* exception. @@ -45472,7 +45472,7 @@

The Proxy Constructor

Proxy ( _target_, _handler_ )

-

When `Proxy` is called with arguments _target_ and _handler_, it performs the following steps:

+

When `Proxy` is called, it performs the following steps:

1. If NewTarget is *undefined*, throw a *TypeError* exception. 1. Return ? ProxyCreate(_target_, _handler_). @@ -45491,7 +45491,7 @@

Properties of the Proxy Constructor

Proxy.revocable ( _target_, _handler_ )

-

The `Proxy.revocable` function is used to create a revocable Proxy object. When `Proxy.revocable` is called with arguments _target_ and _handler_, the following steps are taken:

+

The `Proxy.revocable` function is used to create a revocable Proxy object. When `Proxy.revocable` is called, the following steps are taken:

1. Let _p_ be ? ProxyCreate(_target_, _handler_). 1. Let _revokerClosure_ be a new Abstract Closure with no parameters that captures nothing and performs the following steps when called: @@ -46967,7 +46967,7 @@

Additional Properties of the Global Object

escape ( _string_ )

The `escape` function is a property of the global object. It computes a new version of a String value in which certain code units have been replaced by a hexadecimal escape sequence.

For those code units being replaced whose value is `0x00FF` or less, a two-digit escape sequence of the form %xx is used. For those characters being replaced whose code unit value is greater than `0x00FF`, a four-digit escape sequence of the form %uxxxx is used.

-

The `escape` function is the %escape% intrinsic object. When the `escape` function is called with one argument _string_, the following steps are taken:

+

The `escape` function is the %escape% intrinsic object. When the `escape` function is called, the following steps are taken:

1. Set _string_ to ? ToString(_string_). 1. Let _length_ be the number of code units in _string_. @@ -47000,7 +47000,7 @@

escape ( _string_ )

unescape ( _string_ )

The `unescape` function is a property of the global object. It computes a new version of a String value in which each escape sequence of the sort that might be introduced by the `escape` function is replaced with the code unit that it represents.

-

The `unescape` function is the %unescape% intrinsic object. When the `unescape` function is called with one argument _string_, the following steps are taken:

+

The `unescape` function is the %unescape% intrinsic object. When the `unescape` function is called, the following steps are taken:

1. Set _string_ to ? ToString(_string_). 1. Let _length_ be the number of code units in _string_. @@ -47034,7 +47034,7 @@

Additional Properties of the String.prototype Object

String.prototype.substr ( _start_, _length_ )

-

The `substr` method takes two arguments, _start_ and _length_, and returns a substring of the result of converting the *this* value to a String, starting from index _start_ and running for _length_ code units (or through the end of the String if _length_ is *undefined*). If _start_ is negative, it is treated as _sourceLength_ + _start_ where _sourceLength_ is the length of the String. The result is a String value, not a String object. The following steps are taken:

+

The `substr` method returns a substring of the result of converting the *this* value to a String, starting from index _start_ and running for _length_ code units (or through the end of the String if _length_ is *undefined*). If _start_ is negative, it is treated as _sourceLength_ + _start_ where _sourceLength_ is the length of the String. The result is a String value, not a String object. The following steps are taken:

1. Let _O_ be ? RequireObjectCoercible(*this* value). 1. Let _S_ be ? ToString(_O_). @@ -47055,7 +47055,7 @@

String.prototype.substr ( _start_, _length_ )

String.prototype.anchor ( _name_ )

-

When the `anchor` method is called with argument _name_, the following steps are taken:

+

When the `anchor` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"a"*, *"name"*, _name_). @@ -47097,7 +47097,7 @@

String.prototype.big ( )

-

When the `big` method is called with no arguments, the following steps are taken:

+

When the `big` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"big"*, *""*, *""*). @@ -47106,7 +47106,7 @@

String.prototype.big ( )

String.prototype.blink ( )

-

When the `blink` method is called with no arguments, the following steps are taken:

+

When the `blink` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"blink"*, *""*, *""*). @@ -47115,7 +47115,7 @@

String.prototype.blink ( )

String.prototype.bold ( )

-

When the `bold` method is called with no arguments, the following steps are taken:

+

When the `bold` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"b"*, *""*, *""*). @@ -47124,7 +47124,7 @@

String.prototype.bold ( )

String.prototype.fixed ( )

-

When the `fixed` method is called with no arguments, the following steps are taken:

+

When the `fixed` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"tt"*, *""*, *""*). @@ -47133,7 +47133,7 @@

String.prototype.fixed ( )

String.prototype.fontcolor ( _color_ )

-

When the `fontcolor` method is called with argument _color_, the following steps are taken:

+

When the `fontcolor` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"font"*, *"color"*, _color_). @@ -47142,7 +47142,7 @@

String.prototype.fontcolor ( _color_ )

String.prototype.fontsize ( _size_ )

-

When the `fontsize` method is called with argument _size_, the following steps are taken:

+

When the `fontsize` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"font"*, *"size"*, _size_). @@ -47151,7 +47151,7 @@

String.prototype.fontsize ( _size_ )

String.prototype.italics ( )

-

When the `italics` method is called with no arguments, the following steps are taken:

+

When the `italics` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"i"*, *""*, *""*). @@ -47160,7 +47160,7 @@

String.prototype.italics ( )

String.prototype.link ( _url_ )

-

When the `link` method is called with argument _url_, the following steps are taken:

+

When the `link` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"a"*, *"href"*, _url_). @@ -47169,7 +47169,7 @@

String.prototype.link ( _url_ )

String.prototype.small ( )

-

When the `small` method is called with no arguments, the following steps are taken:

+

When the `small` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"small"*, *""*, *""*). @@ -47178,7 +47178,7 @@

String.prototype.small ( )

String.prototype.strike ( )

-

When the `strike` method is called with no arguments, the following steps are taken:

+

When the `strike` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"strike"*, *""*, *""*). @@ -47187,7 +47187,7 @@

String.prototype.strike ( )

String.prototype.sub ( )

-

When the `sub` method is called with no arguments, the following steps are taken:

+

When the `sub` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"sub"*, *""*, *""*). @@ -47196,7 +47196,7 @@

String.prototype.sub ( )

String.prototype.sup ( )

-

When the `sup` method is called with no arguments, the following steps are taken:

+

When the `sup` method is called, the following steps are taken:

1. Let _S_ be the *this* value. 1. Return ? CreateHTML(_S_, *"sup"*, *""*, *""*). @@ -47228,7 +47228,7 @@

Date.prototype.getYear ( )

The `getFullYear` method is preferred for nearly all purposes, because it avoids the “year 2000 problem.”

-

When the `getYear` method is called with no arguments, the following steps are taken:

+

When the `getYear` method is called, the following steps are taken:

1. Let _t_ be ? thisTimeValue(*this* value). 1. If _t_ is *NaN*, return *NaN*. @@ -47241,7 +47241,7 @@

Date.prototype.setYear ( _year_ )

The `setFullYear` method is preferred for nearly all purposes, because it avoids the “year 2000 problem.”

-

When the `setYear` method is called with one argument _year_, the following steps are taken:

+

When the `setYear` method is called, the following steps are taken:

1. Let _t_ be ? thisTimeValue(*this* value). 1. Let _y_ be ? ToNumber(_year_). @@ -47273,7 +47273,7 @@

Additional Properties of the RegExp.prototype Object

RegExp.prototype.compile ( _pattern_, _flags_ )

-

When the `compile` method is called with arguments _pattern_ and _flags_, the following steps are taken:

+

When the `compile` method is called, the following steps are taken:

1. Let _O_ be the *this* value. 1. Perform ? RequireInternalSlot(_O_, [[RegExpMatcher]]).