| 15.9.1.15-1.js |
---
esid: sec-date-time-string-format
es5id: 15.9.1.15-1
description: >
Date Time String Format - specified default values will be set for
all optional fields(MM, DD, mm, ss and time zone) when they are
absent
--- |
588 |
- |
| coercion-errors.js |
---
esid: sec-date-year-month-date-hours-minutes-seconds-ms
description: Abrupt completions from coercing input values
info: |
3. If NewTarget is not undefined, then
a. Let y be ? ToNumber(year).
b. Let m be ? ToNumber(month).
c. If date is supplied, let dt be ? ToNumber(date); else let dt be 1.
d. If hours is supplied, let h be ? ToNumber(hours); else let h be 0.
e. If minutes is supplied, let min be ? ToNumber(minutes); else let min be 0.
f. If seconds is supplied, let s be ? ToNumber(seconds); else let s be 0.
g. If ms is supplied, let milli be ? ToNumber(ms); else let milli be 0.
h. If y is not NaN and 0 ≤ ToInteger(y) ≤ 99, let yr be 1900+ToInteger(y); otherwise,
let yr be y.
i. Let finalDate be MakeDate(MakeDay(yr, m, dt), MakeTime(h, min, s, milli)).
j. Let O be ? OrdinaryCreateFromConstructor(NewTarget, "%DatePrototype%", « [[DateValue]] »).
k. Set O.[[DateValue]] to TimeClip(UTC(finalDate)).
l. Return O.
--- |
2418 |
- |
| coercion-order.js |
---
esid: sec-date-year-month-date-hours-minutes-seconds-ms
description: Order of input coercion
info: |
3. If NewTarget is not undefined, then
a. Let y be ? ToNumber(year).
b. Let m be ? ToNumber(month).
c. If date is supplied, let dt be ? ToNumber(date); else let dt be 1.
d. If hours is supplied, let h be ? ToNumber(hours); else let h be 0.
e. If minutes is supplied, let min be ? ToNumber(minutes); else let min be 0.
f. If seconds is supplied, let s be ? ToNumber(seconds); else let s be 0.
g. If ms is supplied, let milli be ? ToNumber(ms); else let milli be 0.
h. If y is not NaN and 0 ≤ ToInteger(y) ≤ 99, let yr be 1900+ToInteger(y); otherwise,
let yr be y.
i. Let finalDate be MakeDate(MakeDay(yr, m, dt), MakeTime(h, min, s, milli)).
j. Let O be ? OrdinaryCreateFromConstructor(NewTarget, "%DatePrototype%", « [[DateValue]] »).
k. Set O.[[DateValue]] to TimeClip(UTC(finalDate)).
l. Return O.
--- |
1723 |
- |
| construct_with_date.js |
---
esid: sec-date-value
description: Date constructor called with Date object
info: |
20.3.2.2 Date ( value )
...
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot, then
i. Let tv be thisTimeValue(value).
es6id: 20.3.2.2
--- |
753 |
- |
| name.js |
---
esid: sec-date-constructor
es6id: 20.3.2
description: Constructor "name" property descriptor
info: |
17 ECMAScript Standard Built-in Objects:
Every built-in Function object, including constructors, that is not
identified as an anonymous function has a name property whose value is a
String.
Unless otherwise specified, the name property of a built-in Function object,
if it exists, has the attributes { [[Writable]]: false, [[Enumerable]]:
false, [[Configurable]]: true }.
includes: [propertyHelper.js]
--- |
810 |
- |
| now |
|
|
- |
| parse |
|
|
- |
| proto-from-ctor-realm-one.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: Default [[Prototype]] value derived from realm of the newTarget
info: |
[...]
3. If NewTarget is not undefined, then
[...]
c. Let O be ? OrdinaryCreateFromConstructor(NewTarget,
"%DatePrototype%", « [[DateValue]] »).
[...]
9.1.14 GetPrototypeFromConstructor
[...]
3. Let proto be ? Get(constructor, "prototype").
4. If Type(proto) is not Object, then
a. Let realm be ? GetFunctionRealm(constructor).
b. Let proto be realm's intrinsic object named intrinsicDefaultProto.
[...]
features: [cross-realm, Reflect]
--- |
982 |
- |
| proto-from-ctor-realm-two.js |
---
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es6id: 20.3.2.1
description: Default [[Prototype]] value derived from realm of the newTarget
info: |
[...]
3. If NewTarget is not undefined, then
[...]
j. Let O be ? OrdinaryCreateFromConstructor(NewTarget,
"%DatePrototype%", « [[DateValue]] »).
[...]
9.1.14 GetPrototypeFromConstructor
[...]
3. Let proto be ? Get(constructor, "prototype").
4. If Type(proto) is not Object, then
a. Let realm be ? GetFunctionRealm(constructor).
b. Let proto be realm's intrinsic object named intrinsicDefaultProto.
[...]
features: [cross-realm, Reflect]
--- |
1023 |
- |
| proto-from-ctor-realm-zero.js |
---
esid: sec-date-constructor-date
es6id: 20.3.2.3
description: Default [[Prototype]] value derived from realm of the newTarget
info: |
[...]
3. If NewTarget is not undefined, then
a. Let O be ? OrdinaryCreateFromConstructor(NewTarget,
"%DatePrototype%", « [[DateValue]] »).
[...]
9.1.14 GetPrototypeFromConstructor
[...]
3. Let proto be ? Get(constructor, "prototype").
4. If Type(proto) is not Object, then
a. Let realm be ? GetFunctionRealm(constructor).
b. Let proto be realm's intrinsic object named intrinsicDefaultProto.
[...]
features: [cross-realm, Reflect]
--- |
979 |
- |
| prototype |
|
|
- |
| S15.9.2.1_A1.js |
---
esid: sec-date-year-month-date-hours-minutes-seconds-ms
info: |
When Date is called as a function rather than as a constructor,
it should be "string" representing the current time (UTC)
es5id: 15.9.2.1_A1
description: Checking type of returned value
--- |
2709 |
- |
| S15.9.2.1_A2.js |
---
esid: sec-date-year-month-date-hours-minutes-seconds-ms
info: |
All of the arguments are optional, any arguments supplied are
accepted but are completely ignored. A string is created and returned as
if by the expression (new Date()).toString()
es5id: 15.9.2.1_A2
description: Use various number arguments and various types of ones
--- |
2734 |
- |
| S15.9.3.1_A1_T1.js |
---
info: |
When Date is called as part of a new expression it is
a constructor: it initializes the newly created object
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A1_T1
description: 2 arguments, (year, month)
--- |
5972 |
- |
| S15.9.3.1_A1_T2.js |
---
info: |
When Date is called as part of a new expression it is
a constructor: it initializes the newly created object
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A1_T2
description: 3 arguments, (year, month, date)
--- |
6298 |
- |
| S15.9.3.1_A1_T3.js |
---
info: |
When Date is called as part of a new expression it is
a constructor: it initializes the newly created object
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A1_T3
description: 4 arguments, (year, month, date, hours)
--- |
6625 |
- |
| S15.9.3.1_A1_T4.js |
---
info: |
When Date is called as part of a new expression it is
a constructor: it initializes the newly created object
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A1_T4
description: 5 arguments, (year, month, date, hours, minutes)
--- |
6954 |
- |
| S15.9.3.1_A1_T5.js |
---
info: |
When Date is called as part of a new expression it is
a constructor: it initializes the newly created object
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A1_T5
description: 6 arguments, (year, month, date, hours, minutes, seconds)
--- |
7283 |
- |
| S15.9.3.1_A1_T6.js |
---
info: |
When Date is called as part of a new expression it is
a constructor: it initializes the newly created object
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A1_T6
description: 7 arguments, (year, month, date, hours, minutes, seconds, ms)
--- |
7639 |
- |
| S15.9.3.1_A2_T1.js |
---
info: |
The [[Prototype]] property of the newly constructed object
is set to the original Date prototype object, the one that is the
initial value of Date.prototype
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A2_T1
description: 2 arguments, (year, month)
--- |
5600 |
- |
| S15.9.3.1_A2_T2.js |
---
info: |
The [[Prototype]] property of the newly constructed object
is set to the original Date prototype object, the one that is the
initial value of Date.prototype
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A2_T2
description: 3 arguments, (year, month, date)
--- |
5726 |
- |
| S15.9.3.1_A2_T3.js |
---
info: |
The [[Prototype]] property of the newly constructed object
is set to the original Date prototype object, the one that is the
initial value of Date.prototype
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A2_T3
description: 4 arguments, (year, month, date, hours)
--- |
5853 |
- |
| S15.9.3.1_A2_T4.js |
---
info: |
The [[Prototype]] property of the newly constructed object
is set to the original Date prototype object, the one that is the
initial value of Date.prototype
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A2_T4
description: 5 arguments, (year, month, date, hours, minutes)
--- |
5982 |
- |
| S15.9.3.1_A2_T5.js |
---
info: |
The [[Prototype]] property of the newly constructed object
is set to the original Date prototype object, the one that is the
initial value of Date.prototype
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A2_T5
description: 6 arguments, (year, month, date, hours, minutes, seconds)
--- |
6111 |
- |
| S15.9.3.1_A2_T6.js |
---
info: |
The [[Prototype]] property of the newly constructed object
is set to the original Date prototype object, the one that is the
initial value of Date.prototype
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A2_T6
description: 7 arguments, (year, month, date, hours, minutes, seconds, ms)
--- |
6247 |
- |
| S15.9.3.1_A3_T1.1.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T1.1
description: >
Test based on delete prototype.toString - 2 arguments, (year,
month)
--- |
2606 |
- |
| S15.9.3.1_A3_T1.2.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T1.2
description: >
Test based on overwriting prototype.toString - 2 arguments, (year,
month)
--- |
2413 |
- |
| S15.9.3.1_A3_T2.1.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T2.1
description: >
Test based on delete prototype.toString - 3 arguments, (year,
month, date)
--- |
2652 |
- |
| S15.9.3.1_A3_T2.2.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T2.2
description: >
Test based on overwriting prototype.toString - 3 arguments, (year,
month, date)
--- |
2459 |
- |
| S15.9.3.1_A3_T3.1.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T3.1
description: >
Test based on delete prototype.toString - 4 arguments, (year,
month, date, hours)
--- |
2699 |
- |
| S15.9.3.1_A3_T3.2.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T3.2
description: >
Test based on overwriting prototype.toString - 4 arguments, (year,
month, date, hours)
--- |
2506 |
- |
| S15.9.3.1_A3_T4.1.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T4.1
description: >
Test based on delete prototype.toString - 5 arguments, (year,
month, date, hours, minutes)
--- |
2748 |
- |
| S15.9.3.1_A3_T4.2.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T4.2
description: >
Test based on overwriting prototype.toString - 5 arguments, (year,
month, date, hours, minutes)
--- |
2555 |
- |
| S15.9.3.1_A3_T5.1.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T5.1
description: 6 arguments, (year, month, date, hours, minutes, seconds)
--- |
2745 |
- |
| S15.9.3.1_A3_T5.2.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T5.2
description: >
Test based on overwriting prototype.toString - 6 arguments, (year,
month, date, hours, minutes, seconds)
--- |
2604 |
- |
| S15.9.3.1_A3_T6.1.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T6.1
description: 7 arguments, (year, month, date, hours, minutes, seconds, ms)
--- |
2793 |
- |
| S15.9.3.1_A3_T6.2.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A3_T6.2
description: >
Test based on overwriting prototype.toString - 7 arguments, (year,
month, date, hours, minutes, seconds, ms)
--- |
2652 |
- |
| S15.9.3.1_A4_T1.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
1. Call ToNumber(year)
2. Call ToNumber(month)
3. If date is supplied use ToNumber(date)
4. If hours is supplied use ToNumber(hours)
5. If minutes is supplied use ToNumber(minutes)
6. If seconds is supplied use ToNumber(seconds)
7. If ms is supplied use ToNumber(ms)
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A4_T1
description: 2 arguments, (year, month)
--- |
1295 |
- |
| S15.9.3.1_A4_T2.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
1. Call ToNumber(year)
2. Call ToNumber(month)
3. If date is supplied use ToNumber(date)
4. If hours is supplied use ToNumber(hours)
5. If minutes is supplied use ToNumber(minutes)
6. If seconds is supplied use ToNumber(seconds)
7. If ms is supplied use ToNumber(ms)
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A4_T2
description: 3 arguments, (year, month, date)
--- |
1548 |
- |
| S15.9.3.1_A4_T3.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
1. Call ToNumber(year)
2. Call ToNumber(month)
3. If date is supplied use ToNumber(date)
4. If hours is supplied use ToNumber(hours)
5. If minutes is supplied use ToNumber(minutes)
6. If seconds is supplied use ToNumber(seconds)
7. If ms is supplied use ToNumber(ms)
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A4_T3
description: 4 arguments, (year, month, date, hours)
--- |
1821 |
- |
| S15.9.3.1_A4_T4.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
1. Call ToNumber(year)
2. Call ToNumber(month)
3. If date is supplied use ToNumber(date)
4. If hours is supplied use ToNumber(hours)
5. If minutes is supplied use ToNumber(minutes)
6. If seconds is supplied use ToNumber(seconds)
7. If ms is supplied use ToNumber(ms)
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A4_T4
description: 5 arguments, (year, month, date, hours, minutes)
--- |
2117 |
- |
| S15.9.3.1_A4_T5.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
1. Call ToNumber(year)
2. Call ToNumber(month)
3. If date is supplied use ToNumber(date)
4. If hours is supplied use ToNumber(hours)
5. If minutes is supplied use ToNumber(minutes)
6. If seconds is supplied use ToNumber(seconds)
7. If ms is supplied use ToNumber(ms)
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A4_T5
description: 6 arguments, (year, month, date, hours, minutes, seconds)
--- |
2430 |
- |
| S15.9.3.1_A4_T6.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
1. Call ToNumber(year)
2. Call ToNumber(month)
3. If date is supplied use ToNumber(date)
4. If hours is supplied use ToNumber(hours)
5. If minutes is supplied use ToNumber(minutes)
6. If seconds is supplied use ToNumber(seconds)
7. If ms is supplied use ToNumber(ms)
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A4_T6
description: 7 arguments, (year, month, date, hours, minutes, seconds, ms)
--- |
2745 |
- |
| S15.9.3.1_A5_T1.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
8. If Result(1) is not NaN and 0 <= ToInteger(Result(1)) <= 99, Result(8) is
1900+ToInteger(Result(1)); otherwise, Result(8) is Result(1)
9. Compute MakeDay(Result(8), Result(2), Result(3))
10. Compute MakeTime(Result(4), Result(5), Result(6), Result(7))
11. Compute MakeDate(Result(9), Result(10))
12. Set the [[Value]] property of the newly constructed object to
TimeClip(UTC(Result(11)))
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A5_T1
description: 2 arguments, (year, month)
includes: [assertRelativeDateMs.js]
--- |
1481 |
- |
| S15.9.3.1_A5_T2.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
8. If Result(1) is not NaN and 0 <= ToInteger(Result(1)) <= 99, Result(8) is
1900+ToInteger(Result(1)); otherwise, Result(8) is Result(1)
9. Compute MakeDay(Result(8), Result(2), Result(3))
10. Compute MakeTime(Result(4), Result(5), Result(6), Result(7))
11. Compute MakeDate(Result(9), Result(10))
12. Set the [[Value]] property of the newly constructed object to
TimeClip(UTC(Result(11)))
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A5_T2
description: 3 arguments, (year, month, date)
includes: [assertRelativeDateMs.js]
--- |
1525 |
- |
| S15.9.3.1_A5_T3.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
8. If Result(1) is not NaN and 0 <= ToInteger(Result(1)) <= 99, Result(8) is
1900+ToInteger(Result(1)); otherwise, Result(8) is Result(1)
9. Compute MakeDay(Result(8), Result(2), Result(3))
10. Compute MakeTime(Result(4), Result(5), Result(6), Result(7))
11. Compute MakeDate(Result(9), Result(10))
12. Set the [[Value]] property of the newly constructed object to
TimeClip(UTC(Result(11)))
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A5_T3
description: 4 arguments, (year, month, date, hours)
includes: [assertRelativeDateMs.js]
--- |
1571 |
- |
| S15.9.3.1_A5_T4.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
8. If Result(1) is not NaN and 0 <= ToInteger(Result(1)) <= 99, Result(8) is
1900+ToInteger(Result(1)); otherwise, Result(8) is Result(1)
9. Compute MakeDay(Result(8), Result(2), Result(3))
10. Compute MakeTime(Result(4), Result(5), Result(6), Result(7))
11. Compute MakeDate(Result(9), Result(10))
12. Set the [[Value]] property of the newly constructed object to
TimeClip(UTC(Result(11)))
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A5_T4
description: 5 arguments, (year, month, date, hours, minutes)
includes: [assertRelativeDateMs.js]
--- |
1618 |
- |
| S15.9.3.1_A5_T5.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
8. If Result(1) is not NaN and 0 <= ToInteger(Result(1)) <= 99, Result(8) is
1900+ToInteger(Result(1)); otherwise, Result(8) is Result(1)
9. Compute MakeDay(Result(8), Result(2), Result(3))
10. Compute MakeTime(Result(4), Result(5), Result(6), Result(7))
11. Compute MakeDate(Result(9), Result(10))
12. Set the [[Value]] property of the newly constructed object to
TimeClip(UTC(Result(11)))
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A5_T5
description: 6 arguments, (year, month, date, hours, minutes, seconds)
includes: [assertRelativeDateMs.js]
--- |
1666 |
- |
| S15.9.3.1_A5_T6.js |
---
info: |
The [[Value]] property of the newly constructed object
is set by following steps:
8. If Result(1) is not NaN and 0 <= ToInteger(Result(1)) <= 99, Result(8) is
1900+ToInteger(Result(1)); otherwise, Result(8) is Result(1)
9. Compute MakeDay(Result(8), Result(2), Result(3))
10. Compute MakeTime(Result(4), Result(5), Result(6), Result(7))
11. Compute MakeDate(Result(9), Result(10))
12. Set the [[Value]] property of the newly constructed object to
TimeClip(UTC(Result(11)))
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A5_T6
description: 7 arguments, (year, month, date, hours, minutes, seconds, ms)
includes: [assertRelativeDateMs.js]
--- |
1711 |
- |
| S15.9.3.1_A6_T1.js |
---
info: |
The [[Value]] property of the newly constructed object
with supplied "undefined" argument should be NaN
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A6_T1
description: 2 arguments, (year, month)
--- |
1323 |
- |
| S15.9.3.1_A6_T2.js |
---
info: |
The [[Value]] property of the newly constructed object
with supplied "undefined" argument should be NaN
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A6_T2
description: 3 arguments, (year, month, date)
--- |
1409 |
- |
| S15.9.3.1_A6_T3.js |
---
info: |
The [[Value]] property of the newly constructed object
with supplied "undefined" argument should be NaN
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A6_T3
description: 4 arguments, (year, month, date, hours)
--- |
1496 |
- |
| S15.9.3.1_A6_T4.js |
---
info: |
The [[Value]] property of the newly constructed object
with supplied "undefined" argument should be NaN
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A6_T4
description: 5 arguments, (year, month, date, hours, minutes)
--- |
1585 |
- |
| S15.9.3.1_A6_T5.js |
---
info: |
The [[Value]] property of the newly constructed object
with supplied "undefined" argument should be NaN
esid: sec-date-year-month-date-hours-minutes-seconds-ms
es5id: 15.9.3.1_A6_T5
description: 6 arguments, (year, month, date, hours, minutes, seconds)
--- |
1674 |
- |
| S15.9.3.2_A1_T1.js |
---
info: |
When Date is called as part of a new expression it is
a constructor: it initialises the newly created object
esid: sec-date-value
es5id: 15.9.3.2_A1_T1
description: Checking types of newly created objects and it values
includes: [dateConstants.js]
--- |
4265 |
- |
| S15.9.3.2_A2_T1.js |
---
info: |
The [[Prototype]] property of the newly constructed object
is set to the original Date prototype object, the one that is the
initial value of Date.prototype
esid: sec-date-value
es5id: 15.9.3.2_A2_T1
description: Checking Date.prototype property of newly constructed objects
includes: [dateConstants.js]
--- |
4037 |
- |
| S15.9.3.2_A3_T1.1.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-value
es5id: 15.9.3.2_A3_T1.1
description: Test based on delete prototype.toString
includes: [dateConstants.js]
--- |
1872 |
- |
| S15.9.3.2_A3_T1.2.js |
---
info: |
The [[Class]] property of the newly constructed object
is set to "Date"
esid: sec-date-value
es5id: 15.9.3.2_A3_T1.2
description: Test based on overwriting prototype.toString
includes: [dateConstants.js]
--- |
1763 |
- |
| S15.9.4_A1.js |
---
info: The Date constructor has the property "prototype"
esid: sec-date-constructor
es5id: 15.9.4_A1
description: Checking existence of the property "prototype"
--- |
416 |
- |
| S15.9.4_A2.js |
---
info: The Date constructor has the property "parse"
esid: sec-date-constructor
es5id: 15.9.4_A2
description: Checking existence of the property "parse"
--- |
400 |
- |
| S15.9.4_A3.js |
---
info: The Date constructor has the property "UTC"
esid: sec-date-constructor
es5id: 15.9.4_A3
description: Checking existence of the property "UTC"
--- |
392 |
- |
| S15.9.4_A4.js |
---
info: |
The value of the internal [[Prototype]] property of the Date
constructor is the Function prototype object
esid: sec-date-constructor
es5id: 15.9.4_A4
description: Checking Function.prototype.isPrototypeOf(Date)
--- |
558 |
- |
| S15.9.4_A5.js |
---
info: Date constructor has length property whose value is 7
esid: sec-date-constructor
es5id: 15.9.4_A5
description: Checking Date.length property
--- |
503 |
- |
| subclassing.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: Error retrieving `Symbol.toPrimitive` method from object value
info: |
3. If NewTarget is not undefined, then
[...]
c. Let O be ? OrdinaryCreateFromConstructor(NewTarget, "%DatePrototype%",
« [[DateValue]] »).
[...]
OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ ,
internalSlotsList ] )
[...]
2. Let proto be ? GetPrototypeFromConstructor(constructor,
intrinsicDefaultProto).
3. Return ObjectCreate(proto, internalSlotsList).
features: [Reflect]
--- |
1502 |
- |
| TimeClip_negative_zero.js |
---
esid: sec-timeclip
description: TimeClip converts negative zero to positive zero
info: |
20.3.1.15 TimeClip (time)
...
3. Return ToInteger(time) + (+0). (Adding a positive zero converts -0 to +0.)
es6id: 20.3.1.15
--- |
471 |
- |
| UTC |
|
|
- |
| value-get-symbol-to-prim-err.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: >
Behavior when error thrown while accessing `Symbol.toPrimitive` property
info: |
[...]
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot,
then
[...]
b. Else,
i. Let v be ? ToPrimitive(value).
ES6 Section 7.1.1 ToPrimitive ( input [, PreferredType] )
[...]
4. Let exoticToPrim be GetMethod(input, @@toPrimitive).
5. ReturnIfAbrupt(exoticToPrim).
features: [Symbol.toPrimitive]
--- |
875 |
- |
| value-symbol-to-prim-err.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: >
Behavior when error thrown by invocation of `Symbol.toPrimitive` method
during coercion
info: |
[...]
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot,
then
[...]
b. Else,
i. Let v be ? ToPrimitive(value).
ES6 Section 7.1.1 ToPrimitive ( input [, PreferredType] )
[...]
4. Let exoticToPrim be GetMethod(input, @@toPrimitive).
5. ReturnIfAbrupt(exoticToPrim).
6. If exoticToPrim is not undefined, then
a. Let result be Call(exoticToPrim, input, «hint»).
b. ReturnIfAbrupt(result).
features: [Symbol.toPrimitive]
--- |
997 |
- |
| value-symbol-to-prim-invocation.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: Invocation of `Symbol.toPrimitive` method
info: |
[...]
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot,
then
[...]
b. Else,
i. Let v be ? ToPrimitive(value).
[...]
ES6 Section 7.1.1 ToPrimitive ( input [, PreferredType] )
1. If PreferredType was not passed, let hint be "default".
[...]
4. Let exoticToPrim be GetMethod(input, @@toPrimitive).
5. ReturnIfAbrupt(exoticToPrim).
6. If exoticToPrim is not undefined, then
a. Let result be Call(exoticToPrim, input, «hint»).
[...]
features: [Symbol.toPrimitive]
--- |
1350 |
- |
| value-symbol-to-prim-return-obj.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: >
Behavior when coercion via `Symbol.toPrimitive` yields an Object
info: |
[...]
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot,
then
[...]
b. Else,
i. Let v be ? ToPrimitive(value).
ES6 Section 7.1.1 ToPrimitive ( input [, PreferredType] )
[...]
4. Let exoticToPrim be GetMethod(input, @@toPrimitive).
5. ReturnIfAbrupt(exoticToPrim).
6. If exoticToPrim is not undefined, then
a. Let result be Call(exoticToPrim, input, «hint»).
b. ReturnIfAbrupt(result).
c. If Type(result) is not Object, return result.
d. Throw a TypeError exception.
features: [Symbol.toPrimitive]
--- |
1234 |
- |
| value-symbol-to-prim-return-prim.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: >
Behavior when coercion via `Symbol.toPrimitive` yields a primitive value
info: |
[...]
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot,
then
[...]
b. Else,
i. Let v be ? ToPrimitive(value).
ES6 Section 7.1.1 ToPrimitive ( input [, PreferredType] )
[...]
4. Let exoticToPrim be GetMethod(input, @@toPrimitive).
5. ReturnIfAbrupt(exoticToPrim).
6. If exoticToPrim is not undefined, then
a. Let result be Call(exoticToPrim, input, «hint»).
b. ReturnIfAbrupt(result).
c. If Type(result) is not Object, return result.
features: [Symbol.toPrimitive]
--- |
1223 |
- |
| value-to-primitive-call-err.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: Error invoking `Symbol.toPrimitive` method of object value
info: |
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot, then
i. Let tv be thisTimeValue(value).
b. Else,
i. Let v be ? ToPrimitive(value).
ToPrimitive ( input [ , PreferredType ] )
[...]
4. Let exoticToPrim be ? GetMethod(input, @@toPrimitive).
features: [Symbol.toPrimitive]
--- |
816 |
- |
| value-to-primitive-call.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: Invocation of `Symbol.toPrimitive` method of object value
info: |
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot, then
i. Let tv be thisTimeValue(value).
b. Else,
i. Let v be ? ToPrimitive(value).
[...]
ToPrimitive ( input [ , PreferredType ] )
1. If PreferredType was not passed, let hint be "default".
2. Else if PreferredType is hint String, let hint be "string".
3. Else PreferredType is hint Number, let hint be "number".
4. Let exoticToPrim be ? GetMethod(input, @@toPrimitive).
5. If exoticToPrim is not undefined, then
a. Let result be ? Call(exoticToPrim, input, « hint »).
[...]
features: [Symbol.toPrimitive]
--- |
1423 |
- |
| value-to-primitive-get-meth-err.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: Error retrieving `Symbol.toPrimitive` method from object value
info: |
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot, then
i. Let tv be thisTimeValue(value).
b. Else,
i. Let v be ? ToPrimitive(value).
[...]
features: [Symbol.toPrimitive]
--- |
952 |
- |
| value-to-primitive-result-faulty.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: Exotic `Symbol.toPrimitive` method returns a non-primitive
info: |
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot, then
i. Let tv be thisTimeValue(value).
b. Else,
i. Let v be ? ToPrimitive(value).
ToPrimitive ( input [ , PreferredType ] )
1. If PreferredType was not passed, let hint be "default".
2. Else if PreferredType is hint String, let hint be "string".
3. Else PreferredType is hint Number, let hint be "number".
4. Let exoticToPrim be ? GetMethod(input, @@toPrimitive).
5. If exoticToPrim is not undefined, then
a. Let result be ? Call(exoticToPrim, input, « hint »).
b. If Type(result) is not Object, return result.
c. Throw a TypeError exception.
features: [Symbol.toPrimitive]
--- |
1518 |
- |
| value-to-primitive-result-non-string-prim.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: >
Exotic `Symbol.toPrimitive` method returns a primitive value other than a
string
info: |
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot, then
i. Let tv be thisTimeValue(value).
b. Else,
i. Let v be ? ToPrimitive(value).
ii. If Type(v) is String, then
1. Let tv be the result of parsing v as a date, in exactly the same
manner as for the parse method (20.3.3.2). If the parse resulted
in an abrupt completion, tv is the Completion Record.
ToPrimitive ( input [ , PreferredType ] )
1. If PreferredType was not passed, let hint be "default".
2. Else if PreferredType is hint String, let hint be "string".
3. Else PreferredType is hint Number, let hint be "number".
4. Let exoticToPrim be ? GetMethod(input, @@toPrimitive).
5. If exoticToPrim is not undefined, then
a. Let result be ? Call(exoticToPrim, input, « hint »).
b. If Type(result) is not Object, return result.
features: [Symbol.toPrimitive]
--- |
1944 |
- |
| value-to-primitive-result-string.js |
---
esid: sec-date-value
es6id: 20.3.2.2
description: Exotic `Symbol.toPrimitive` method returns a String value
info: |
3. If NewTarget is not undefined, then
a. If Type(value) is Object and value has a [[DateValue]] internal slot, then
i. Let tv be thisTimeValue(value).
b. Else,
i. Let v be ? ToPrimitive(value).
ii. If Type(v) is String, then
1. Let tv be the result of parsing v as a date, in exactly the same
manner as for the parse method (20.3.3.2). If the parse resulted
in an abrupt completion, tv is the Completion Record.
ToPrimitive ( input [ , PreferredType ] )
1. If PreferredType was not passed, let hint be "default".
2. Else if PreferredType is hint String, let hint be "string".
3. Else PreferredType is hint Number, let hint be "number".
4. Let exoticToPrim be ? GetMethod(input, @@toPrimitive).
5. If exoticToPrim is not undefined, then
a. Let result be ? Call(exoticToPrim, input, « hint »).
b. If Type(result) is not Object, return result.
features: [Symbol.toPrimitive]
--- |
1438 |
- |