【JavaScript ECMAScript】Temporal::Temporal.Duration.prototype.toLocaleStringインスタンスメソッドの使い方
Temporal.Duration.prototype.toLocaleString()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
Temporal.Duration.prototype.toLocaleString()メソッドは、Temporal.Durationオブジェクトが保持する期間の情報を、指定されたロケール(言語や地域の設定)に基づいて、人間にとって読みやすい文字列形式に変換して返すメソッドです。このメソッドは、Webアプリケーションやシステムにおいて、ユーザーインターフェースに時間的な期間を表示する際に、世界中の様々な文化や言語のユーザーにとって自然で理解しやすい表現を提供するために活用されます。
具体的には、Temporal.Durationオブジェクトが持つ年、月、日、時間、分、秒などの各期間要素を、その地域の慣習に合わせた適切な表記で文字列に変換します。例えば、同じ期間であっても、日本語圏では「1日と2時間」と表示され、英語圏では「1 day, 2 hours」のように表示されるといった違いを吸収します。
このメソッドには、オプションで二つの引数を渡すことができます。一つ目はlocalesで、期間をフォーマットするための言語や地域を示す文字列、またはその配列を指定します。これを省略すると、実行環境のデフォルトのロケールが自動的に使用されます。二つ目はoptionsオブジェクトで、ここでは表示スタイルの詳細(例えば、長い形式、短い形式など)や、どの時間単位を表示するかといった、より細かいフォーマット設定を柔軟に行うことが可能です。
Temporal.Duration.prototype.toLocaleString()は、国際化対応(i18n)が求められるアプリケーション開発において、時間的な期間の表現を適切に扱い、ユーザーエクスペリエンスを向上させるための重要な機能を提供します。Temporal API自体は、JavaScriptで日付と時刻を扱うための新しい提案であり、より堅牢で直感的な時間処理を可能にすることを目指しています。
構文(syntax)
1const durationInstance = Temporal.Duration.from({ hours: 1, minutes: 30 }); 2const localizedString = durationInstance.toLocaleString('en-US', { style: 'long' });
引数(parameters)
locales, options
- locales: string | string[] | undefined: 表示する言語を指定します。例: "en-US", "ja-JP"
- options: Intl.DateTimeFormatOptions | undefined: 書式設定のオプションを指定します。
戻り値(return)
string
このメソッドは、Temporal.Duration オブジェクトの値を、指定されたロケール(地域と言語の組み合わせ)に基づいた文字列形式で返します。