new Time()
Represents a baja:Time
in BajaScript.
Time
stores a time of day which is independent
of any date in the past or future.
When creating a Simple
, always use the make()
method instead of
creating a new Object.
Extends
Members
-
<static> DEFAULT :baja.Time
-
Default
Time
instance.Type:
-
<static> MIDNIGHT :baja.Time
-
Midnight
Time
.Type:
Methods
-
<static> make(obj)
-
Make a
Time
.Parameters:
Name Type Description obj
Object | number the object literal used for the method's
arguments, or number of milliseconds past the start of the day.Properties
Name Type Argument Description hour
Number <optional>
hours - (0-23).
min
Number <optional>
minutes - (0-59).
sec
Number <optional>
seconds - (0-59).
ms
Number <optional>
milliseconds - (0-999).
relTime
baja.RelTime <optional>
if defined, this is the milliseconds
since the start of the day. This overrides the other hour, min, sec and ms
arguments.milliseconds
number <optional>
if defined, this is the milliseconds
since the start of the day. This overrides the other hour, min, sec, ms
and relTime arguments.Returns:
- Type
- baja.Time
Example
// An object literal is used for the method's arguments... var t1 = baja.Time.make({ hour: 23, min: 12, sec: 15, ms: 789 }); // ...or use a baja.RelTime to specify hour, min, sec and ms... var t2 = baja.Time.make({ relTime: myRelTime }); // ...or pass in milliseconds past midnight... var t3 = baja.Time.make(12345);
-
add(duration)
-
Return a new time of day by adding the specified duration. If the result
goes past midnight, then roll into the next day.Parameters:
Name Type Description duration
baja.RelTime | baja.Time | Number RelTime or number of
millisReturns:
the new time with the duration added on.
- Type
- baja.Time
-
decodeAsync(str [, batch])
-
The string encoding of certain Simples may include Type information, or
other data that may be require asynchronous operations to decode. BOX is
designed to handle these situations when decoding data from the station,
but when user code needs to decode string-encoded Simples directly, prefer
this method as it gives the individual Simple a chance to import Types,
etc. to ensure that the decoded Simple is fully correct.The default implementation just returns
decodeFromString
directly.Parameters:
Name Type Argument Description str
string batch
baja.comm.Batch <optional>
optional batch to use
- Inherited From:
Returns:
may return the Simple instance
directly, or a Promise resolving to same - so wrap inPromise.resolve()
if unsure.- Type
- baja.Simple | Promise.<baja.Simple>
-
decodeFromString(str)
-
Decode a
Time
from aString
.Parameters:
Name Type Description str
String - Overrides:
Returns:
- Type
- baja.Time
-
encodeToString()
-
Encode a
Time
to aString
.- Overrides:
Returns:
- Type
- String
-
equals(obj)
-
Equality test.
Parameters:
Name Type Description obj
- Overrides:
Returns:
- Type
- Boolean
-
equivalent(obj)
-
Equivalence test.
equivalent()
is used to compare if two Objects have equivalent
state, but might not want to return true for equals since it
it has implied semantics for many operations. The default
implementation returns the result of baja.Object#equals.Parameters:
Name Type Description obj
- Inherited From:
Returns:
- Type
- Boolean
-
getAgents( [is], batch)
-
Returns a promise that resolves to the agent list for this Object.
Parameters:
Name Type Argument Description is
Array.<String> <optional>
An optional array of filters to add to the
agent query.batch
baja.comm.Batch An optional object used to batch network
calls together.- Inherited From:
- See:
Returns:
A promise that will resolve with the Agent Info.
- Type
- Promise
-
getHour()
-
Return hours (0-23).
Returns:
- Type
- Number
-
getIcon()
-
Return the Object's Icon.
- Inherited From:
Returns:
- Type
- baja.Icon
-
getMillisecond()
-
Return milliseconds (0-999).
Returns:
- Type
- Number
-
getMinute()
-
Return minutes (0-59).
Returns:
- Type
- Number
-
getSecond()
-
Return seconds (0-59).
Returns:
- Type
- Number
-
getTimeOfDayMillis()
-
Return the milliseconds since the start of the day.
Returns:
- Type
- Number
-
getType()
-
Get the type of this instance.
- Inherited From:
Returns:
- Type
- Type
-
isAfter(time)
-
Return true if the specified time is after this time.
Parameters:
Name Type Description time
baja.Time Returns:
- Type
- Boolean
-
isBefore(time)
-
Return true if the specified time is before this time.
Parameters:
Name Type Description time
baja.Time Returns:
- Type
- Boolean
-
make(obj)
-
Make a
Time
.Parameters:
Name Type Description obj
Object the object literal used for the method's arguments.
Properties
Name Type Argument Description hour
Number <optional>
hours - (0-23).
min
Number <optional>
minutes - (0-59).
sec
Number <optional>
seconds - (0-59).
ms
Number <optional>
milliseconds - (0-999).
relTime
baja.RelTime <optional>
if defined, this is the milliseconds
since the start of the day. This overrides the other hour, min, sec and ms
arguments.- Overrides:
Returns:
- Type
- baja.Time
Example
// An object literal is used for the method's arguments... var t1 = baja.$("baja:Time").make({ hour: 23, min: 12, sec: 15, ms: 789 }); // ...or use a baja.RelTime to specify hour, min, sec and ms... var t2 = baja.$("baja:Time").make({ relTime: timeOfDayMillis }); // ...or pass in milliseconds past midnight... var t3 = baja.Time.make(12345);
-
newCopy( [exact])
-
Every value may be cloned using the
newCopy
method.Please note that
Simple
s are immutable so they don't
allocate a new instance.Parameters:
Name Type Argument Description exact
Boolean <optional>
true if an exact copy of the value should be
made (only valid in the Component architecture).- Inherited From:
- See:
Returns:
a copy of the value (or the same instance if the value is a
Simple
). -
toString()
-
- Overrides:
- See:
-
- .toTimeStringSync
-
toTimeString( [obj])
-
Asynchronously get a
String
representation of the time.This method is invoked asynchronously. A
Function
callback or an object
literal that contains aFunction
callback must be supplied.Parameters:
Name Type Argument Description obj
Object | function <optional>
the Object Literal for the method's arguments
or a Function that will be called with the formatting time String.Properties
Name Type Argument Description ok
function <optional>
(Deprecated: use Promise) the Function callback
that will be invoked once the time has been formatted into a String.fail
function <optional>
(Deprecated: use Promise) the Function
callback that will be invoked if a fatal error occurs whilst formatting the
String.textPattern
String <optional>
the text pattern to use for formatting.
If not specified, then the user's default time format text pattern will be
used.show
Number <optional>
flags used to format the time. For more
information, please see baja.TimeFormat.Returns:
promise to be resolved with the time string
- Type
- Promise.<String>
Example
myTime.toTimeString().then(function(timeStr) { baja.outln("The time is: " + timeStr); });
-
toTimeStringSync(obj)
-
Synchronously get a
String
representation of the time.This method is invoked synchronously. The string result will be returned
directly from this function. Since building upTime
string
representations requires thebaja
lexicon, said lexicon must already be
retrieved and passed into this method. Apart from that, the behavior is the
same as the asynchronous baja.Time#toTimeString.Parameters:
Name Type Description obj
Object | function the Object Literal for the method's arguments
or a Function that will be called with the formatting time String.Properties
Name Type Argument Description textPattern
String <optional>
the text pattern to use for formatting.
If not specified, then the user's default time format text pattern will be
used.show
Number <optional>
flags used to format the time. For more
information, please see baja.TimeFormat.lex
the
baja
lexiconThrows:
-
if the lexicon is not passed in, or is not the
baja
lexicon - Type
- Error
Returns:
- Type
- String
-
-
valueOf()
-
Return the inner value of the object.
By default the object's instance is returned.
- Inherited From:
Returns:
the inner value of the object or just the object's instance.
- Type
- *