ee.Date

  • The ee.Date() constructor creates a new Date object in Earth Engine.

  • It accepts various input types for the date: a number (milliseconds since epoch), an ISO Date string, a JavaScript Date, or a ComputedObject.

  • An optional timezone argument (tz) can be provided when using a string date input.

  • Numerical inputs can be scaled for readability, like using 60 * 1000 to represent 60 seconds.

  • Examples demonstrate creating dates from different inputs and formatting them using format().getInfo().

Constructs a new Date object.

UsageReturns
ee.Date(date, tz)Date
ArgumentTypeDetails
dateComputedObject|Date|Number|StringThe date to convert, one of: a number (number of milliseconds since the epoch), an ISO Date string, a JavaScript Date or a ComputedObject.
tzString, optionalAn optional timezone only to be used with a string date.

Examples

Code Editor (JavaScript)

// Numeric inputs are interpreted as milliseconds from Unix epoch.
print(ee.Date(0));  // Date (1970-01-01 00:00:00)

// Scale factors can make numerical inputs more readable (e.g. 60 seconds).
print(ee.Date(60 * 1000));  // Date (1970-01-01 00:01:00)

// ISO 8601 date string input examples.
print(ee.Date('2020'));  // Date (2020-01-01 00:00:00)
print(ee.Date('2017-6-24'));  // Date (2017-06-24 00:00:00)
print(ee.Date('2017-06-24'));  // Date (2017-06-24 00:00:00)
print(ee.Date('2017-6-24T00:14:46'));  // Date (2017-06-24 00:14:46)
print(ee.Date('2017-06-24T23:59:59'));  // Date (2017-06-24 23:59:59)

// With an optional time zone.
print(ee.Date('2020', 'US/Mountain'));  // Date (2020-01-01T07:00:00)

// Convert JavaScript now to Earth Engine Date
print(ee.Date(Date.now()));

Python setup

See the Python Environment page for information on the Python API and using geemap for interactive development.

import ee
import geemap.core as geemap

Colab (Python)

from datetime import datetime

# Numeric inputs are interpreted as milliseconds from Unix epoch.
print(ee.Date(0).format().getInfo())  # 1970-01-01T00:00:00

# Scale factors can make numerical inputs more readable (e.g. 60 seconds).
print(ee.Date(60 * 1000).format().getInfo())  # 1970-01-01T00:01:00

# ISO 8601 date string input examples.
print(ee.Date('2020').format().getInfo())  # 2020-01-01T00:00:00
print(ee.Date('2017-6-24').format().getInfo())  # 2017-06-24T00:00:00
print(ee.Date('2017-06-24').format().getInfo())  # 2017-06-24T00:00:00
print(ee.Date('2017-6-24T00:14:46').format().getInfo())  # 2017-06-24T00:14:46
print(ee.Date('2017-06-24T23:59:59').format().getInfo())  # 2017-06-24T23:59:59

# With an optional time zone.
print(ee.Date('2020', 'US/Mountain').format().getInfo())  # 2020-01-01T07:00:00

# Convert Python datetime.now() to Earth Engine Date
print(ee.Date(datetime.now()).format().getInfo())