Intl sub-classing is now restricted to class syntax.

This commit is contained in:
André Bargull 2015-07-08 19:13:31 +02:00
parent 888524ff1d
commit 438b87b5b6
3 changed files with 15 additions and 18 deletions

View File

@ -15,15 +15,14 @@ var a = ["A", "C", "E", "B", "D", "F"];
var referenceCollator = new Intl.Collator(locales);
var referenceSorted = a.slice().sort(referenceCollator.compare);
function MyCollator(locales, options) {
Intl.Collator.call(this, locales, options);
class MyCollator extends Intl.Collator {
constructor(locales, options) {
super(locales, options);
// could initialize MyCollator properties
}
// could add methods to MyCollator.prototype
}
MyCollator.prototype = Object.create(Intl.Collator.prototype);
MyCollator.prototype.constructor = MyCollator;
// could add methods to MyCollator.prototype
var collator = new MyCollator(locales);
a.sort(collator.compare);
testArraysAreSame(referenceSorted, a);

View File

@ -15,15 +15,14 @@ var a = [0, 1, -1, -123456.789, -Infinity, NaN];
var referenceNumberFormat = new Intl.NumberFormat(locales);
var referenceFormatted = a.map(referenceNumberFormat.format);
function MyNumberFormat(locales, options) {
Intl.NumberFormat.call(this, locales, options);
class MyNumberFormat extends Intl.NumberFormat {
constructor(locales, options) {
super(locales, options);
// could initialize MyNumberFormat properties
}
// could add methods to MyNumberFormat.prototype
}
MyNumberFormat.prototype = Object.create(Intl.NumberFormat.prototype);
MyNumberFormat.prototype.constructor = MyNumberFormat;
// could add methods to MyNumberFormat.prototype
var format = new MyNumberFormat(locales);
var actual = a.map(format.format);
testArraysAreSame(referenceFormatted, actual);

View File

@ -15,15 +15,14 @@ var a = [new Date(0), Date.now(), new Date(Date.parse("1989-11-09T17:57:00Z"))];
var referenceDateTimeFormat = new Intl.DateTimeFormat(locales);
var referenceFormatted = a.map(referenceDateTimeFormat.format);
function MyDateTimeFormat(locales, options) {
Intl.DateTimeFormat.call(this, locales, options);
class MyDateTimeFormat extends Intl.DateTimeFormat {
constructor(locales, options) {
super(locales, options);
// could initialize MyDateTimeFormat properties
}
// could add methods to MyDateTimeFormat.prototype
}
MyDateTimeFormat.prototype = Object.create(Intl.DateTimeFormat.prototype);
MyDateTimeFormat.prototype.constructor = MyDateTimeFormat;
// could add methods to MyDateTimeFormat.prototype
var format = new MyDateTimeFormat(locales);
var actual = a.map(format.format);
testArraysAreSame(referenceFormatted, actual);