| # 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. | |
| ### New | |
| Creates a new instance of a `Napi::Date` object. | |
| ```cpp | |
| static Napi::Date Napi::Date::New(napi_env env, std::chrono::system_clock::time_point time_point); | |
| ``` | |
| - `[in] env`: The environment in which to construct the `Napi::Date` object. | |
| - `[in] value`: The point in time, represented by an | |
| `std::chrono::system_clock::time_point`. | |
| 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(); | |
| ``` |