This is the ThingsDB documentation for version v0, click here for the latest version!
Type timeval
is exactly the same as type datetime. The only difference is the
default return. The return value of a timeval
type is the value as a UNIX time stamp, while
type datetime
returns with the time as a string in ISO8601 format.
Why type timeval
? It is possible to return a datetime
as int(datetime)
to get the UNIX time stamp, so why use timeval
?
It is often easier to work with time stamps then with time as string values.
Some
tv = timeval(2020, 12, 10); /* type timeval, 10 December 2020 */
dt = datetime(2020, 12, 10); /* type datetime, 10 December 2020 */
assert (tv == dt); /* true, both have the same time */
assert (type(tv) == 'timeval');
assert (type(dt) == 'datetime');
{
dt: dt,
tv: tv
}; // Return value is different
Return value in JSON format
{
"dt": "2020-12-10T00:00:00Z",
"tv": 1607558400
}
Function | Description |
---|---|
extract | Return a thing with second , minute , hour , day , month , year and gmt_offset as individual properties. |
format | Returns a string representation using a custom format string. |
move | Return a new timeval which is shifted in time relative to the original date/time. |
replace | Return a new timeval with new values for given time units. |
to | Return a new timeval with new time zone information. |
week | Return the week of the year as an integer between 0..53 . Week 1 starts at the first Sunday in January. |
weekday | Return the number of days (0..6 ) since the last Sunday. |
yday | Return the day in the year as an integer value between 0..365 where the first of January is day 0 . |
zone | Return the time zone as a string, of nil if not zone information is available. |
The above functions correspond to those of a datetime
object. For that reason, they are only listed under the data type datetime
.
Function | Description |
---|---|
timeval | Create a new timeval value. |
is_timeval | Test if a given value is of type timeval. |