All Day.js objects are immutable. Still, dayjs#clone
can create a clone of the current object if you need one.
dayjs().clone()// => Dayjs
dayjs(dayjs('2019-01-25')) // passing a Dayjs object to a constructor will also clone it
Accepts numbers from 1 to 31. If the range is exceeded, it will bubble up to the months.
dayjs().date(1)// => Dayjs
Set the date of the month.
Accepts numbers from 1 to 31. If the range is exceeded, it will bubble up to the months.
dayjs().date(1)// => Dayjs
Get the day of the week.
Returns numbers from 0 (Sunday) to 6 (Saturday).
dayjs().day()// 0-6
Set the day of the week.
Accepts numbers from 0 (Sunday) to 6 (Saturday). If the range is exceeded, it will bubble up to other weeks.
dayjs().day(0)// => Dayjs
Get the number of days in the current month.
dayjs('2019-01-25').daysInMonth() // 31
This indicates the difference between two date-time in the specified unit.
To get the difference in milliseconds, use dayjs#diff
const date1 = dayjs('2019-01-25')
const date2 = dayjs('2018-06-05')
date1.diff(date2) // 20214000000 default milliseconds
To get the difference in another unit of measurement, pass that measurement as the second argument.
const date1 = dayjs('2019-01-25')
date1.diff('2018-06-05', 'month') // 7
Units are case insensitive, and support plural and short forms.
Returns a cloned Day.js object and set it to the end of a unit of time.
dayjs().endOf('month')// => Dayjs
Units are case insensitive, and support plural and short forms.
Get the formatted date according to the string of tokens passed in.
To escape characters, wrap them in square brackets (e.g. [MM]).
dayjs().format()// => current date in ISO8601, without fraction seconds e.g. '2020-04-02T08:02:17-05:00'
dayjs('2019-01-25').format('[YYYYescape] YYYY-MM-DDTHH:mm:ssZ[Z]')// 'YYYYescape 2019-01-25T00:00:00-02:00Z'
dayjs('2019-01-25').format('DD/MM/YYYY') // '25/01/2019'
String getter, returns the corresponding information getting from Day.js object.
In general:
dayjs().get(unit) === dayjs()[unit]()
Units are case insensitive, and support plural and short forms.
dayjs().get('year')
dayjs().get('month') // start 0
dayjs().get('date')
Accepts numbers from 0 to 23. If the range is exceeded, it will bubble up to the day.
dayjs().hour(12)// => Dayjs
Set the hour.
Accepts numbers from 0 to 23. If the range is exceeded, it will bubble up to the day.
dayjs().hour(12)// => Dayjs
This indicates whether the Day.js object is after the other supplied date-time.
dayjs().isAfter(dayjs('2011-01-01')) // default milliseconds
If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.
dayjs().isAfter('2011-01-01', 'year')// => boolean
Units are case insensitive, and support plural and short forms.
This indicates whether the Day.js object is before the other supplied date-time.
dayjs().isBefore(dayjs('2011-01-01')) // default milliseconds
If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.
dayjs().isBefore('2011-01-01', 'year')// => boolean
Units are case insensitive, and support plural and short forms.
This indicates whether the Day.js object is the same as the other supplied date-time.
dayjs().isSame(dayjs('2011-01-01')) // default milliseconds
If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.
dayjs().isSame('2011-01-01', 'year')// => boolean
This returns a boolean
indicating whether the Day.js object contains a valid date or not.
dayjs().isValid()// => boolean
Get the milliseconds.
dayjs().millisecond()// => 0-999
Accepts numbers from 0 to 999. If the range is exceeded, it will bubble up to the seconds.
dayjs().millisecond(1)// => Dayjs
Set the milliseconds.
Accepts numbers from 0 to 999. If the range is exceeded, it will bubble up to the seconds.
dayjs().millisecond(1)// => Dayjs
Accepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the hour.
dayjs().minute(59)// => Dayjs
Set the minutes.
Accepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the hour.
dayjs().minute(59)// => Dayjs
Get the month.
Months are zero indexed, so January is month 0.
dayjs().month()// => 0-11
Set the month.
Months are zero indexed, so January is month 0.
Accepts numbers from 0 to 11. If the range is exceeded, it will bubble up to the year.
dayjs().month(0)// => Dayjs
Accepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the minutes.
dayjs().second(1)// Dayjs
Set the seconds.
Accepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the minutes.
dayjs().second(1)// Dayjs
Generic setter, accepting unit as first argument, and value as second, returns a new instance with the applied changes.
In general:
dayjs().set(unit, value) === dayjs()[unit](value)
Units are case insensitive, and support plural and short forms.
dayjs().set('date', 1)
dayjs().set('month', 3) // April
dayjs().set('second', 30)
Returns a cloned Day.js object and set it to the start of a unit of time.
dayjs().startOf('year')// => Dayjs
Units are case insensitive, and support plural and short forms.
Returns a cloned Day.js object with a specified amount of time subtracted.
dayjs().subtract(7, 'year')// => Dayjs
Units are case insensitive, and support plural and short forms.
To get a copy of the native Date
object parsed from the Day.js object use dayjs#toDate
.
dayjs('2019-01-25').toDate()// => Date
To format as an ISO 8601 string.
dayjs('2019-01-25').toISOString() // '2019-01-25T02:00:00.000Z'
To serialize as an ISO 8601 string.
dayjs('2019-01-25').toJSON() // '2019-01-25T02:00:00.000Z'
Returns a string representation of the date.
dayjs('2019-01-25').toString() // 'Fri, 25 Jan 2019 02:00:00 GMT'
This returns the Unix timestamp (the number of seconds since the Unix Epoch) of the Day.js object.
dayjs('2019-01-25').unix() // 1548381600
This value is floored to the nearest second, and does not include a milliseconds component.
Get the UTC offset in minutes.
dayjs().utcOffset()
This returns the number of milliseconds since the Unix Epoch of the Day.js object.
dayjs('2019-01-25').valueOf() // 1548381600000
+dayjs(1548381600000) // 1548381600000
To get a Unix timestamp (the number of seconds since the epoch) from a Day.js object, you should use Unix Timestamp dayjs#unix()
.
Generated using TypeDoc
Returns a cloned Day.js object with a specified amount of time added.
Units are case insensitive, and support plural and short forms.
Docs: https://day.js.org/docs/en/manipulate/add