function assertParts(nf, x, expected) { var parts = nf.formatToParts(x);
assertEq(parts.map(part => part.value).join(""), nf.format(x), "formatToParts and format must agree");
var len = parts.length;
assertEq(len, expected.length, "parts count mismatch"); for (var i = 0; i < len; i++) {
assertEq(parts[i].type, expected[i].type, "type mismatch at " + i);
assertEq(parts[i].value, expected[i].value, "value mismatch at " + i);
}
}
function assertRangeParts(nf, start, end, expected) { var parts = nf.formatRangeToParts(start, end);
assertEq(parts.map(part => part.value).join(""), nf.formatRange(start, end), "formatRangeToParts and formatRange must agree");
var len = parts.length;
assertEq(len, expected.length, "parts count mismatch"); for (var i = 0; i < len; i++) {
assertEq(parts[i].type, expected[i].type, "type mismatch at " + i);
assertEq(parts[i].value, expected[i].value, "value mismatch at " + i);
assertEq(parts[i].source, expected[i].source, "source mismatch at " + i);
}
}
function runNumberFormattingTestcases(testcases) { for (let {locale, options, values} of testcases) {
let nf = new Intl.NumberFormat(locale, options);
for (let {value, string, parts} of values) {
assertEq(nf.format(value), string,
`locale=${locale}, options=${JSON.stringify(options)}, value=${value}`);
assertParts(nf, value, parts);
}
}
}
Messung V0.5
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.