[Edge]。→
Date の「時刻」部を表す、言語特有の慣習による文字列を返します。
Date | Date。 |
---|---|
locales | ¶文字列、文字列の配列。例: "en-US"、"en-GB"、"ko-KR"。 |
options | ¶オブジェクト:
|
mdn: locales および options 引数は、関数の動作をカスタマイズし、使用される書式の慣習を言語で指定することができるににします。locales および options 引数を無視する実装では、使用されるロケールおよび返される文字列の書式は完全に実装依存になります。
mdn: これらの引数やその使い方についての詳細は、Intl.DateTimeFormat() コンストラクターを参照してください。
mdn: 時刻のそれぞれの部分のプロパティにおける既定値は undefined ですが、hour、minute、second プロパティがすべて undefined のときは、hour、minute、second は "numeric" とみなされます。
「時刻」部を表す、言語特有の慣習による文字列。
大量の日付を書式化する場合は、Intl.DateTimeFormat オブジェクトを生成してその Intl.DateTimeFormat.format プロパティで提供される関数を使用したほうが得策です。
ロケールを指定しない基本的な使い方では、既定のロケールと既定のオプションによる書式の文字列が返されます。
var date = new Date(Date.UTC(2012, 11, 12, 3, 0, 0)); // toLocaleTimeString() に引数を与えなければ実装に依存し、 // 既定のロケールとタイムゾーンを返す D=date.toLocaleTimeString(); //="7:00:00 PM"。アメリカ/ロサンゼルスのタイムゾーンの en-US ロケールで実行した場合 //→="12:00:00"
locales および options 引数は、まだすべてのブラウザーが対応しているわけではありません。これらが実装されているかどうかをチェックするには、不適切な言語タグを与えると RangeError 例外で拒否されるという要件を使用することができます。
function toLocaleTimeStringSupportsLocales() { try { new Date().toLocaleTimeString('i'); } catch (e) { return e.name === 'RangeError'; } return false; }
この例では、国ごとに異なる時刻書式を示します。アプリケーションのユーザー インターフェイスで使用されている言語の書式を得るには、locales 引数でその言語(あるいはフォールバック先の言語)を指定してください。
コンソールにて var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0)); // 以下の書式はその地域のタイムゾーンとロケールを想定 // 米国のアメリカ大陸/ロサンゼルス // 米国英語は AM/PM 表記の 12 時間制 console.log(date.toLocaleTimeString('en-US')); // → "7:00:00 PM" // 英国英語は AM/PM 表記なしの 24 時間制 console.log(date.toLocaleTimeString('en-GB')); // → "03:00:00" // 韓国は AM/PM 表記の 12 時間制 console.log(date.toLocaleTimeString('ko-KR')); // → "오후 12:00:00" // 多くのアラビア語圏ではアラビア数字を使用 console.log(date.toLocaleTimeString('ar-EG')); // → "٧:٠٠:٠٠ م" // 対応していない可能性のある言語を要求した場合、例えば // バリ語とし、フォールバック言語にインドネシア語を指定した場合 console.log(date.toLocaleTimeString(['ban', 'id'])); // → "11.00.00"
toLocaleTimeString() メソッドから得られる結果は、options 引数でカスタマイズできます。
//コンソールにて var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0)); // アプリケーションで UTC を用い、それを表示したい場合 var options = { timeZone: 'UTC', timeZoneName: 'short' }; console.log(date.toLocaleTimeString('en-US', options)); // → "3:00:00 AM GMT" // 米国でも 24 時間制を使うことがある console.log(date.toLocaleTimeString('en-US', { hour12: false })); // → "19:00:00" // 既定のロケールのオプション - 空の配列を使用して時と分のみを表示 console.log(date.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })); // → "20:01"
DA=new Date("2020-10-05T19:23:30"); D=DA.toLocaleTimeString(); //=[string]:19:23:30 D=DA.toLocaleTimeString('ja-jp'); //=[string]:19:23:30 D=DA.toLocaleTimeString('en-US'); //=[string]:7:23:30 PM D=DA.toLocaleTimeString('ja-jp', {timeZone:'UTC'}); //=[string]:10:23:30 D=DA.toLocaleTimeString('ja-jp', {timeZone:'GMT'}); //=[string]:10:23:30 D=DA.toLocaleTimeString('ja-jp', {timeZoneName:'short'}); //=[string]:19:23:30 JST D=DA.toLocaleTimeString('ja-jp', {timeZoneName:'long'}); //=[string]:19時23分30秒 日本標準時 D=DA.toLocaleTimeString('ja-jp', {hour12:false}); //=[string]:19:23:30 D=DA.toLocaleTimeString('ja-jp', {hour12:true}); //=[string]:午後7:23:30 D=DA.toLocaleTimeString('ja-jp', {hour:'2-digit'}); //=[string]:19時 D=DA.toLocaleTimeString('ja-jp', {minute:'2-digit'}); //=[string]:23