Intl.DateTimeFormat.prototype.formatToParts() is scheduled to be added to the EcmaScript Internationalization API specification (Ecma 402). It adds a method to format date and time to a list of tokens and their type (e.g. literal, day, year, month, hour, minute, era, etc).
Docs: https://github.com/tc39/ecma402/issues/30 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat/formatToParts https://github.com/zbraniecki/proposal-intl-formatToParts