summaryrefslogtreecommitdiff
path: root/deps/v8/test/intl/date-format/date-format-to-parts.js
blob: 9b2e41bc966b2d917eab4c5c0e72563c5c13e46f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Copyright 2016 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

var d = new Date(2016, 11, 15, 14, 10, 34);
var df = Intl.DateTimeFormat("ja",
    {hour: 'numeric', minute: 'numeric', second: 'numeric', year: 'numeric',
     month: 'numeric', day: 'numeric', timeZoneName: 'short', era: 'short',
     hour12: true});

var formattedParts = df.formatToParts(d);

var formattedReconstructedFromParts = formattedParts.map((part) => part.value)
    .reduce((accumulated, part) => accumulated + part);
assertEquals(df.format(d), formattedReconstructedFromParts);
// 西暦2016年11月15日 午後02:10:34 GMT-7
assertEquals(["era", "year", "literal", "month", "literal", "day", "literal",
              "dayPeriod", "hour", "literal", "minute", "literal", "second",
              "literal", "timeZoneName"
             ], formattedParts.map((part) => part.type));