diff --git a/spec.html b/spec.html index 3f1f909e359..58eb786c663 100644 --- a/spec.html +++ b/spec.html @@ -24736,7 +24736,7 @@

ECMAScript Standard Built-in Objects

Each built-in function defined in this specification is created by calling the CreateBuiltinFunction abstract operation ().

Every built-in function object, including constructors, has a *"length"* property whose value is a non-negative integral Number. Unless otherwise specified, this value is equal to the number of required parameters shown in the subclause headings for the function description. Optional parameters and rest parameters are not included in the parameter count.

-

For example, the function object that is the initial value of the *"map"* property of the Array prototype object is described under the subclause heading «Array.prototype.map (callbackFn [ , thisArg])» which shows the two named arguments callbackFn and thisArg, the latter being optional; therefore the value of the *"length"* property of that function object is 1.

+

For example, the function object that is the initial value of the *"map"* property of the Array prototype object is described under the subclause heading «Array.prototype.map (callbackFn [ , thisArg])» which shows the two named arguments callbackFn and thisArg, the latter being optional; therefore the value of the *"length"* property of that function object is *1*𝔽.

Unless otherwise specified, the *"length"* property of a built-in function object has the attributes { [[Writable]]: *false*, [[Enumerable]]: *false*, [[Configurable]]: *true* }.

Every built-in function object, including constructors, has a *"name"* property whose value is a String. Unless otherwise specified, this value is the name that is given to the function in this specification. Functions that are identified as anonymous functions use the empty String as the value of the *"name"* property. For functions that are specified as properties of objects, the name value is the property name string used to access the function. Functions that are specified as get or set accessor functions of built-in properties have *"get "* or *"set "* prepended to the property name string. The value of the *"name"* property is explicitly specified for each built-in functions whose property key is a Symbol value. The *"name"* property is set using SetFunctionName.

@@ -26211,7 +26211,7 @@

Properties of the Function Prototype Object

  • does not have a [[Construct]] internal method; it cannot be used as a constructor with the `new` operator.
  • has a [[Prototype]] internal slot whose value is %Object.prototype%.
  • does not have a *"prototype"* property.
  • -
  • has a *"length"* property whose value is 0.
  • +
  • has a *"length"* property whose value is *+0*𝔽.
  • has a *"name"* property whose value is the empty String.
  • @@ -28492,7 +28492,7 @@

    The Date Constructor

  • returns a String representing the current time (UTC) when called as a function rather than as a constructor.
  • is a function whose behaviour differs based upon the number and types of its arguments.
  • is designed to be subclassable. It may be used as the value of an `extends` clause of a class definition. Subclass constructors that intend to inherit the specified Date behaviour must include a `super` call to the Date constructor to create and initialize the subclass instance with a [[DateValue]] internal slot.
  • -
  • has a *"length"* property whose value is 7.
  • +
  • has a *"length"* property whose value is *7*𝔽.
  • @@ -29550,7 +29550,7 @@

    Properties of the String Prototype Object

  • is %String.prototype%.
  • is a String exotic object and has the internal methods specified for such objects.
  • has a [[StringData]] internal slot whose value is the empty String.
  • -
  • has a *"length"* property whose initial value is 0 and whose attributes are { [[Writable]]: *false*, [[Enumerable]]: *false*, [[Configurable]]: *false* }.
  • +
  • has a *"length"* property whose initial value is *+0*𝔽 and whose attributes are { [[Writable]]: *false*, [[Enumerable]]: *false*, [[Configurable]]: *false* }.
  • has a [[Prototype]] internal slot whose value is %Object.prototype%.
  • Unless explicitly stated otherwise, the methods of the String prototype object defined below are not generic and the *this* value passed to them must be either a String value or an object that has a [[StringData]] internal slot that has been initialized to a String value.

    @@ -32721,7 +32721,7 @@

    The Array Constructor

  • also creates and initializes a new Array object when called as a function rather than as a constructor. Thus the function call `Array(…)` is equivalent to the object creation expression `new Array(…)` with the same arguments.
  • is a function whose behaviour differs based upon the number and types of its arguments.
  • is designed to be subclassable. It may be used as the value of an `extends` clause of a class definition. Subclass constructors that intend to inherit the exotic Array behaviour must include a `super` call to the Array constructor to initialize subclass instances that are Array exotic objects. However, most of the `Array.prototype` methods are generic methods that are not dependent upon their *this* value being an Array exotic object.
  • -
  • has a *"length"* property whose value is 1.
  • +
  • has a *"length"* property whose value is *1*𝔽.
  • @@ -32884,7 +32884,7 @@

    Properties of the Array Prototype Object

    • is %Array.prototype%.
    • is an Array exotic object and has the internal methods specified for such objects.
    • -
    • has a *"length"* property whose initial value is 0 and whose attributes are { [[Writable]]: *true*, [[Enumerable]]: *false*, [[Configurable]]: *false* }.
    • +
    • has a *"length"* property whose initial value is *+0*𝔽 and whose attributes are { [[Writable]]: *true*, [[Enumerable]]: *false*, [[Configurable]]: *false* }.
    • has a [[Prototype]] internal slot whose value is %Object.prototype%.
    @@ -35091,7 +35091,7 @@

    The _TypedArray_ Constructors

  • is a function whose behaviour differs based upon the number and types of its arguments. The actual behaviour of a call of _TypedArray_ depends upon the number and kind of arguments that are passed to it.
  • is not intended to be called as a function and will throw an exception when called in that manner.
  • is designed to be subclassable. It may be used as the value of an `extends` clause of a class definition. Subclass constructors that intend to inherit the specified _TypedArray_ behaviour must include a `super` call to the _TypedArray_ constructor to create and initialize the subclass instance with the internal state necessary to support the %TypedArray%`.prototype` built-in methods.
  • -
  • has a *"length"* property whose value is 3.
  • +
  • has a *"length"* property whose value is *3*𝔽.