SenseTalkの日付と時間の値
SenseTalkは、日 付と時間を操作するためのコマンドと関数を含んでいます。一つの日付または時間から別の日付または時間をマイEggplant( - )演算子を使用して減算し、その差を秒で得ることができます。時間間隔を日付または時間に追加することで、新しい日付/時間値を得ることも可能です(時間間隔の追加と減算を参照してください)。
日付、時間、および時間間隔
SenseTalkでは、「日付」と「時間」の基本的な区別はありません - どちらも時間の流れの中の精密な瞬間、またはタイムライン上のポイントとして扱われます。その起源(ゼロ値)は2001年1月1日の始まりの真夜中に、調整世界時でした。その瞬間以前の任意の日付または時間は内部的には負の値として扱われ、後の時間は起源以降の秒数を示す正の値として扱われます。
SenseTalkは、「4/22/67」または「1967-04-22 18:00」のような多様な形式で表現された日付と時間を認識することができます。詳細については、the timeInputFormat
グローバルプロパティを参照してください。Natural
フォーマットでは、さらに多くのバリエーションを許容し、「May 15, 2004 10:57 PM」、または"yesterday"、"today"、や"next Tuesday in the afternoon." などを許容します。 today
とnow
(引用符で囲まれていない)の単語は、現在の日付または現在の日付と時間を指示するために使用できます(それらが変数として使用され、他の値が割り当てられていな い場合)。このフォーマットについての詳細情報については、Natural
Formatを参照してください。
日付値が一日の時間を指定せずに提供されると、その日の正午を意味するとみなされます。日付なしで時間が指定されると、現在の日付(今日)の指定時間を意味するとみなされます。すべての日付と時間は、スクリプトが実行されているマシン上で現在設定されているローカルタイムゾーンであると想定されます。
_time interval_または_duration_は、時間の長さです。時間間隔を扱うとき、SenseTalkは特定の単位が与えられない場合、秒単位で測定された持続時間を想定しますが、週、日、時間、ミリ秒など、他の多くの単位も使用できます(Values内のTime Intervalsを参照してください)。
秒で正確に測定できる持続時間に加えて、SenseTalkは、月、calendarQuarters、calendarYearsなどを含む月を基準に測定された_calendar durations_ もサポートしています。使用可能なcalendarDuration単位の全リストを確認するには、次のコマンドを使用します:
put (each item of the unitNames whose unitType is calendarDuration) sorted