Этот класс содержит методы для выполнения операций с объектами SimpleDateTime, например для создания экземпляров объектов, а также для расчета, изменения форматов даты и времени или преобразования между форматами.
SimpleDateTime(dateTime)
Используйте этот конструктор для создания экземпляра нового объекта SimpleDateTime с текущими или переданными значениями дата/время. Объект хранит данные о дате и времени в UTC, поэтому перед передачей этих параметров убедитесь, что они в этом часовом поясе, чтобы избежать ошибки.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
dateTime | String | Нет | '' |
Пример:
const nowDateTime = new SimpleDateTime(); // const registrationDateTime = new SimpleDateTime(record.registration_datetime); // const yearStartDateTime = new SimpleDateTime('2019-01-01 00:00:00');
Вы также можете использовать значения дат в относительном формате для конструктора SimpleDateTime. Все форматы доступны в статье Относительные форматы.
const yesterdayDatetime = new SimpleDateTime('yesterday'); ss.info(yesterdayDatetime.getValue()); // Информация: 2022-02-28 00:00:00 const tomorrowDatetime = new SimpleDateTime('tomorrow'); ss.info(tomorrowDatetime.getValue()); // Информация: 2022-03-02 00:00:00 const yesterdayWorkdayDayStart = new SimpleDateTime('yesterday 06:30'); ss.info(yesterdayWorkdayDayStart.getValue()); // Информация: 2022-02-28 06:30:00 const fistDayOfNextMonthStart = new SimpleDateTime('first day of next month 00:00'); ss.info(fistDayOfNextMonthStart.getValue()); // Информация: 2022-04-01 00:00:00 const rangeStartDatetime = new SimpleDateTime(`first day of ${monthName}`); ss.info(rangeStartDatetime .getValue()); // Информация: 2022-02-01 00:00:00 const YEAR = 2022; const MONTH = 2; const monthDatetime = new SimpleDateTime(`${YEAR}-${String(MONTH).padStart(2, '0')}-02 00:00:00`); const monthName = monthDatetime.getMonthUTC(); ss.info(monthName); // Информация: Февраль
addDays(days)
Используйте метод для изменения числа в объекте SimpleDateTime относительно его текущей даты. Положительное значение параметра добавляет дни к текущей дате, отрицательное значение параметра отнимает дни от текущей даты.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
days | Integer | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
const registrationDateTime = new SimpleDateTime('2019-01-01 08:12:10'); registrationDateTime.addDays(3); ss.info(registrationDateTime.getValue()); // Информация: 2019-01-04 08:12:10
addMonths(months)
Используйте этот метод, чтобы изменить значение месяца в текущем объекте SimpleDateTime относительно его текущей даты. Положительное значение параметра добавляет к текущей дате количество дней, равное количеству дней в текущем месяце, отрицательное значение параметра отнимает количество дней, равное количеству дней в предыдущем месяце.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
months | Integer | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
const registrationDateTime = new SimpleDateTime('2019-01-01 08:12:10'); registrationDateTime.addMonths(-1); ss.info(registrationDateTime.getValue()); // Информация: 2018-12-01 08:12:10
addSeconds(seconds)
Используйте метод для изменения секунд в текущем объекте SimpleDateTime относительно его текущего времени. Положительное значение параметра добавляет секунды ко времени, отрицательное значение уменьшает количество секунд.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
seconds | Integer | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
const registrationDateTime = new SimpleDateTime('2019-01-01 08:12:10'); registrationDateTime.addSeconds(3600); ss.info(registrationDateTime.getValue()); // Информация: 2019-01-01 09:12:10
addWeeks(weeks)
Используйте метод, чтобы изменить значение порядкового номера недели в текущем объекте SimpleDateTime относительно его текущей даты. Положительное значение параметра увеличивает порядковый номер недели относительно текущей даты, отрицательное значение уменьшает его.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
weeks | Integer | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
const registrationDateTime = new SimpleDateTime('2019-01-01 08:12:10'); registrationDateTime.addWeeks(1); ss.info(registrationDateTime.getValue()); // Информация: 2019-01-08 08:12:10
addYears(years)
Используйте метод для изменения года в текущем объекте SimpleDateTime относительно его текущей даты. Положительное значение параметра добавляет года к дате, отрицательное значение уменьшает количество лет.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
years | Integer | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
const contractStartDateTime = new SimpleDateTime('2019-01-01 00:00:00'); contractStartDateTime.addYears(1); ss.info(contractStartDateTime.getValue()); // Информация: 2020-01-01 00:00:00
after(dateTime)
Используйте этот метод, чтобы определить, следует ли текущая дата после даты, указанной в dateTime.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
dateTime | SimpleDateTime object | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Boolean | Метод возвращает true, если текущая дата позднее заданной в параметре или равна ей. Если текущая дата раньше указанной в параметре, метод возвращает false. |
Пример:
const startDateTime = new SimpleDateTime('2018-01-01 07:58:35'); const endDateTime = new SimpleDateTime('2019-01-01 08:00:00'); const isStartAfterThanEnd = startDateTime.after(endDateTime); ss.info(isStartAfterThanEnd); // Информация: false
before(dateTime)
Используйте метод, чтобы определить, предшествует ли текущая дата указанной дате в dateTime.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
dateTime | SimpleDateTime object | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Boolean | Метод возвращает true, если текущая дата предшествует заданной в параметре или равна ей. Если текущая дата позже указанной в параметре, метод возвращает false. |
Пример:
const startDateTime = new SimpleDateTime('2018-01-01 07:58:35'); const endDateTime = new SimpleDateTime('2019-01-01 08:00:00'); const isStartBeforeEnd = startDateTime.before(endDateTime); ss.info(isStartBeforeEnd); // Информация: true
compareTo(dateTime)
Используйте этот метод, чтобы сравнить два объекта даты и времени и определить, равны ли они. Если нет, метод определяет их порядок.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
dateTime | SimpleDateTime object | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
0 | Даты совпадают. |
1 | Дата объекта идет после даты, указанной в параметре. |
-1 | Дата объекта предшествует дате, указанной в параметре. |
Пример:
const begin = new SimpleDateTime('2019-04-01 08:15:00'); const end = new SimpleDateTime('2019-05-01 01:00:00'); ss.info(begin.compareTo(end)); // -1 ss.info(end.compareTo(begin)); // 1 ss.info(begin.compareTo(begin)); // 0
equals(dateTime)
Используйте этот метод, чтобы сравнить значение dateTime с текущей датой объекта, чтобы определить, совпадают ли они.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
dateTime | SimpleDateTime object | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Boolean | Метод возвращает true, если даты совпадают; если даты различаются, метод возвращает false. |
Пример:
const firstDateTime = new SimpleDateTime('2018-01-01 08:00:00'); const secondDateTime = new SimpleDateTime('2018-01-01 08:15:00'); const thirdDateTime = new SimpleDateTime('2018-01-01 08:00:00'); ss.info(firstDateTime.equals(secondDateTime)); ss.info(thirdDateTime.equals(firstDateTime)); // Информация: false // Информация: true
getDate()
Используйте метод, чтобы вернуть дату, сохраненную в объекте SimpleDateTime в часовом поясе UTC.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает дату в часовом поясе UTC. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); ss.info(startDateTime.getDate()); // Информация: 2019-01-01
getDayOfMonthLocalTime()
Используйте метод, чтобы вернуть день месяца, сохраненный объектом SimpleDateTime в часовом поясе текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает день месяца. |
Пример:
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00'); ss.info(holidayDateTime.getDayOfMonthLocalTime()); // Информация: 7
getDayOfMonthUTC()
Используйте метод, чтобы вернуть день месяца, сохраненный объектом SimpleDateTime в часовом поясе UTC.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает день месяца. |
Пример:
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00'); ss.info(holidayDateTime.getDayOfMonthUTC()); // Информация: 7
getDayOfWeekLocalTime()
Используйте метод, чтобы вернуть день недели, сохраненный объектом SimpleDateTime, в часовом поясе текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает значение дня недели. Возможные значения: 'Пнд', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб', 'Вск'. |
Пример:
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00'); ss.info(holidayDateTime.getDayOfWeekLocalTime()); // Пнд
getDayOfWeekUTC()
Используйте метод, чтобы вернуть день недели, сохраненный объектом SimpleDateTime в часовом поясе UTC.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает значение дня недели. Возможные значения: 'Пнд', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб', 'Вск'. |
Пример:
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00'); ss.info(holidayDateTime.getDayOfWeekUTC()); //Информация: Пнд
getDaysInMonthLocalTime()
Используйте метод, чтобы вернуть количество дней в месяце, сохраненном объектом SimpleDateTime в часовом поясе текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает количество дней в месяце. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); ss.info(startDateTime.getDaysInMonthLocalTime()); //Информация: 31
getDaysInMonthUTC()
Используйте метод, чтобы вернуть количество дней в месяце, сохраненном объектом SimpleDateTime в часовом поясе UTC.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает количество дней в месяце. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); ss.info(startDateTime.getDaysInMonthUTC()); //Информация: 31
getDisplayValue()
Используйте метод, чтобы вернуть значения даты и времени в часовом поясе и отображаемом формате текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает значение даты и времени. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); ss.info(startDateTime.getDisplayValue()); // Часовой пояс текущего пользователя Europe/Moscow //Информация: 2019-01-01 11:00:00
getErrorMsg()
Используйте метод, чтобы вернуть сообщение об ошибке, если объект SimpleDateTime был некорректным.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает сообщение об ошибке. |
Пример:
const startDateTime = new SimpleDateTime('2019-zz-01 08:00:00'); ss.error(startDateTime.getErrorMsg()); // Ошибка: Анализ даты и времени выявил ошибку!
getLocalDate()
Используйте метод, чтобы вернуть дату, сохраненную объектом SimpleDateTime, в часовом поясе текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает дату в часовом поясе пользователя. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); ss.info(startDateTime.getLocalDate()); // Информация: 2019-01-01
getLocalTime()
Используйте метод, чтобы вернуть время, сохраненное объектом SimpleDateTime, в часовом поясе текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
SimpleTime object | Метод возвращает время в часовом поясе пользователя. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); const time = startDateTime.getLocalTime(); ss.info( "Местное время " + time.getValue()); // Часовой пояс текущего пользователя Europe/Moscow // Информация: Местное время 11:00:00.
getMonthLocalTime()
Используйте метод, чтобы вернуть месяц, сохраненный объектом SimpleDateTime, в часовом поясе текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает название месяца. |
Пример:
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00'); ss.info(startDateTime.getMonthLocalTime()); // Информация: Январь
getMonthUTC()
Используйте метод, чтобы вернуть значение месяца, сохраненное объектом SimpleDateTime, в часовом поясе UTC.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает название месяца. |
Пример:
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00'); ss.info(startDateTime.getMonthUTC()); // Информация: Декабрь
getNumericValue()
Используйте метод, чтобы вернуть временную метку Unix, в которой хранится количество секунд с 1 января 1970, 00:00:00.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает значение временной метки Unix. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); ss.info(startDateTime.getNumericValue()); // Информация: 1546329600
getTime()
Используйте метод, чтобы вернуть объект SimpleTime, который показывает значение времени объекта SimpleDateTime.
Возвращаемое значение:
Тип | Описание |
---|---|
SimpleTime object | Метод возвращает время в часовом поясе UTC. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); const time = startDateTime.getTime(); ss.info(time.getValue()); // Информация: 08:00:00
getValue()
Используйте метод, чтобы вернуть значение даты и времени в часовом поясе UTC.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает значение даты и времени во внутреннем формате. Если введённое значение даты не валидно, метод возвращает null. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); ss.info(startDateTime.getValue()); // 2019-01-01 08:00:00
getWeekOfYearLocalTime()
Используйте метод, чтобы вернуть порядковый номер недели, сохраненный объектом SimpleDateTime в часовом поясе текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает номер текущей недели. |
Пример:
const startDateTime = new SimpleDateTime('2023-12-31 23:45:00'); ss.info(startDateTime.getWeekOfYearLocalTime()); // Часовой пояс текущего пользователя Europe/Moscow // Информация: 1
getWeekOfYearUTC()
Используйте метод, чтобы вернуть номер недели, сохраненный объектом SimpleDateTime в часовом поясе UTC.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает номер текущей недели. |
Пример:
const startDateTime = new SimpleDateTime('2023-12-31 23:45:00'); ss.info(startDateTime.getWeekOfYearUTC()); // Информация: 52
getYearLocalTime()
Используйте метод, чтобы вернуть значение года, сохраненное объектом SimpleDateTime в часовом поясе текущего пользователя.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает четырехзначное значение года. |
Пример:
const holidayDateTime = new SimpleDateTime('2019-12-31 23:45:00'); ss.info(holidayDateTime.getYearLocalTime()); // Часовой пояс текущего пользователя Europe/Moscow // Информация: 2020
getYearUTC()
Используйте метод, чтобы вернуть значение года, сохраненное объектом SimpleDateTime в часовом поясе UTC.
Возвращаемое значение:
Тип | Описание |
---|---|
Integer | Метод возвращает четырехзначное значение года. |
Пример:
const holidayDateTime = new SimpleDateTime('2019-12-31 23:45:00'); ss.info(holidayDateTime.getYearUTC()); // Информация: 2019
isValid()
Используйте этот метод, чтобы определить, является ли допустимым указанное значение даты и времени.
Возвращаемое значение:
Тип | Описание |
---|---|
Boolean | Метод возвращает true, если значение даты и времени допустимо; если нет, то метод возвращает false. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); startDateTime.setValue('2011-aa-01 00:00:00'); ss.info(startDateTime.isValid()); //Информация: false
setValue(dateTime)
Используйте этот метод для определения значения даты и времени в объекте SimpleDateTime. Параметр dateTime должен иметь значение в часовом поясе UTC и внутреннем формате ГГГГ-ММ-ДД чч:мм:сс.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
dateTime | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00'); startDateTime.setValue('2020-01-01 12:00:00'); ss.info(startDateTime.getValue()); //Информация: 2020-01-01 12:00:00
subtract(first, second)
Используйте метод, чтобы вернуть количество времени между двумя значениями SimpleDateTime. Кроме того, он может вычесть количество времени из текущего объекта SimpleDateTime.
Метод getDisplayValue() возвращает значение в часовом поясе текущего пользователя. Метод getValue() возвращает данные только в часовом поясе UTC.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
first | SimpleDateTime object/Integer | Да | Нет |
second | SimpleDateTime object | Нет | null |
Возвращаемое значение:
Тип | Описание |
---|---|
SimpleDuration object | Метод возвращает объект SimpleDuration, если в метод переданы оба параметра. В остальных случаях метод возвращает null. |
Пример 1:
const startDatetime = new SimpleDateTime('2019-11-08 20:00:00'); const endDatetime = new SimpleDateTime('2019-11-08 20:06:28'); const diffDuration = new SimpleDateTime().subtract(startDatetime, endDatetime); ss.info(diffDuration.getDurationSeconds()); // Информация: 388
Тот же пример без использования метода subtract:
const startDatetime = new SimpleDateTime('2019-11-08 20:00:00'); const endDatetime = new SimpleDateTime('2019-11-08 20:06:28'); const diffSeconds = endDatetime.getNumericValue() - startDatetime.getNumericValue(); ss.info(diffSeconds); // Информация: 388
Пример 2:
const datetime = new SimpleDateTime('2020-08-28 09:00:00'); datetime.subtract(3600); ss.info(datetime.getValue()); // Информация: 2020-08-28 08:00:00
Тот же пример без использования метода subtract:
const datetime = new SimpleDateTime('2020-08-28 09:00:00'); datetime.addSeconds(-3600); ss.info(datetime.getValue()); // Информация: 2020-08-28 08:00:00