| # Date |
| |
| `Napi::Date` class is a representation of the JavaScript `Date` object. The |
| `Napi::Date` class inherits its behavior from the `Napi::Value` class |
| (for more info see [`Napi::Value`](value.md)). |
| |
| ## Methods |
| |
| ### Constructor |
| |
| Creates a new _empty_ instance of a `Napi::Date` object. |
| |
| ```cpp |
| Napi::Date::Date(); |
| ``` |
| |
| Creates a new _non-empty_ instance of a `Napi::Date` object. |
| |
| ```cpp |
| Napi::Date::Date(napi_env env, napi_value value); |
| ``` |
| |
| - `[in] env`: The environment in which to construct the `Napi::Date` object. |
| - `[in] value`: The `napi_value` which is a handle for a JavaScript `Date`. |
| |
| ### New |
| |
| Creates a new instance of a `Napi::Date` object. |
| |
| ```cpp |
| static Napi::Date Napi::Date::New(Napi::Env env, double value); |
| ``` |
| |
| - `[in] env`: The environment in which to construct the `Napi::Date` object. |
| - `[in] value`: The time value the JavaScript `Date` will contain represented |
| as the number of milliseconds since 1 January 1970 00:00:00 UTC. |
| |
| Returns a new instance of `Napi::Date` object. |
| |
| ### ValueOf |
| |
| ```cpp |
| double Napi::Date::ValueOf() const; |
| ``` |
| |
| Returns the time value as `double` primitive represented as the number of |
| milliseconds since 1 January 1970 00:00:00 UTC. |
| |
| ## Operators |
| |
| ### operator double |
| |
| Converts a `Napi::Date` value to a `double` primitive. |
| |
| ```cpp |
| Napi::Date::operator double() const; |
| ``` |
| |
| ### Example |
| |
| The following shows an example of casting a `Napi::Date` value to a `double` |
| primitive. |
| |
| ```cpp |
| double operatorVal = Napi::Date::New(Env(), 0); // Napi::Date to double |
| // or |
| auto instanceVal = info[0].As<Napi::Date>().ValueOf(); |
| ``` |