Перейти к основному содержимому
Версия: 1.20.1

SimpleDateTime

Этот класс содержит методы для выполнения операций с объектами SimpleDateTime, например для создания экземпляров объектов, а также для расчета, изменения форматов даты и времени или преобразования между форматами.

SimpleDateTime(dateTime)


Используйте этот конструктор для создания экземпляра нового объекта SimpleDateTime с текущими или переданными значениями дата/время. Объект хранит данные о дате и времени в UTC, поэтому перед передачей этих параметров убедитесь, что они в этом часовом поясе, чтобы избежать ошибки.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
dateTimeStringНет''

Пример:

SimpleDateTime()
const nowDateTime = new SimpleDateTime();
//
const registrationDateTime = new SimpleDateTime(record.registration_datetime);
//
const yearStartDateTime = new SimpleDateTime('2019-01-01 00:00:00');

Вы также можете использовать значения дат в относительном формате для конструктора SimpleDateTime. Все форматы доступны в статье Относительные форматы.

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 относительно его текущей даты. Положительное значение параметра добавляет дни к текущей дате, отрицательное значение параметра отнимает дни от текущей даты.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
daysIntegerДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

addDays()
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 относительно его текущей даты. Положительное значение параметра добавляет к текущей дате количество дней, равное количеству дней в текущем месяце, отрицательное значение параметра отнимает количество дней, равное количеству дней в предыдущем месяце.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
monthsIntegerДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

addMonths()
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 относительно его текущего времени. Положительное значение параметра добавляет секунды ко времени, отрицательное значение уменьшает количество секунд.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
secondsIntegerДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

addSeconds()
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 относительно его текущей даты. Положительное значение параметра увеличивает порядковый номер недели относительно текущей даты, отрицательное значение уменьшает его.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
weeksIntegerДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

addWeeks()
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 относительно его текущей даты. Положительное значение параметра добавляет года к дате, отрицательное значение уменьшает количество лет.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
yearsIntegerДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

addYears()
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.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
dateTimeSimpleDateTime objectДаНет

Возвращаемое значение:

ТипОписание
BooleanМетод возвращает true, если текущая дата позднее заданной в параметре или равна ей. Если текущая дата раньше указанной в параметре, метод возвращает false.

Пример:

after()
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.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
dateTimeSimpleDateTime objectДаНет

Возвращаемое значение:

ТипОписание
BooleanМетод возвращает true, если текущая дата предшествует заданной в параметре или равна ей. Если текущая дата позже указанной в параметре, метод возвращает false.

Пример:

before()
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)


Используйте этот метод, чтобы сравнить два объекта даты и времени и определить, равны ли они. Если нет, метод определяет их порядок.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
dateTimeSimpleDateTime objectДаНет

Возвращаемое значение:

ТипОписание
0Даты совпадают.
1Дата объекта идет после даты, указанной в параметре.
-1Дата объекта предшествует дате, указанной в параметре.

Пример:

compareTo()
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 с текущей датой объекта, чтобы определить, совпадают ли они.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
dateTimeSimpleDateTime objectДаНет

Возвращаемое значение:

ТипОписание
BooleanМетод возвращает true, если даты совпадают; если даты различаются, метод возвращает false.

Пример:

equals()
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.

Пример:

getDate()
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getDate());
//Информация: 2019-01-01

getDayOfMonthLocalTime()


Используйте метод, чтобы вернуть день месяца, сохраненный объектом SimpleDateTime в часовом поясе текущего пользователя.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает день месяца.

Пример:

getDaysofMonthsLocalTime()
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00');
ss.info(holidayDateTime.getDayOfMonthLocalTime());
//Информация: 7

getDayOfMonthUTC()


Используйте метод, чтобы вернуть день месяца, сохраненный объектом SimpleDateTime в часовом поясе UTC.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает день месяца.

Пример:

getDaysofMonthsLocalTime()
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00');
ss.info(holidayDateTime.getDayOfMonthUTC());
//Информация: 7

getDayOfWeekLocalTime()


Используйте метод, чтобы вернуть день недели, сохраненный объектом SimpleDateTime, в часовом поясе текущего пользователя.

Возвращаемое значение:

ТипОписание
StringМетод возвращает значение дня недели. Возможные значения: 'Пнд', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб', 'Вск'.

Пример:

getDayOfWeekLocalTime()
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00');
ss.info(holidayDateTime.getDayOfWeekLocalTime()); // Пнд

getDayOfWeekUTC()


Используйте метод, чтобы вернуть день недели, сохраненный объектом SimpleDateTime в часовом поясе UTC.

Возвращаемое значение:

ТипОписание
StringМетод возвращает значение дня недели. Возможные значения: 'Пнд', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб', 'Вск'.

Пример:

getDayOfWeekUTC()
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00');
ss.info(holidayDateTime.getDayOfWeekUTC());
//Информация: Пнд

getDaysInMonthLocalTime()


Используйте метод, чтобы вернуть количество дней в месяце, сохраненном объектом SimpleDateTime в часовом поясе текущего пользователя.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает количество дней в месяце.

Пример:

getDaysInMonthLocalTime()
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getDaysInMonthLocalTime());
//Информация: 31

getDaysInMonthUTC()


Используйте метод, чтобы вернуть количество дней в месяце, сохраненном объектом SimpleDateTime в часовом поясе UTC.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает количество дней в месяце.

Пример:

getDaysInMonthUTC()
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getDaysInMonthUTC());
//Информация: 31

getDisplayValue()


Используйте метод, чтобы вернуть значения даты и времени в часовом поясе и отображаемом формате текущего пользователя.

Возвращаемое значение:

ТипОписание
StringМетод возвращает значение даты и времени.

Пример:

getDisplayValue()
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Метод возвращает сообщение об ошибке.

Пример:

getErrorMsg()
const startDateTime = new SimpleDateTime('2019-zz-01 08:00:00');
ss.error(startDateTime.getErrorMsg());
// Ошибка: Анализ даты и времени выявил ошибку!

getLocalDate()


Используйте метод, чтобы вернуть дату, сохраненную объектом SimpleDateTime, в часовом поясе текущего пользователя.

Возвращаемое значение:

ТипОписание
StringМетод возвращает дату в часовом поясе пользователя.

Пример:

getLocalDate()
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getLocalDate());
//Информация: 2019-01-01

getLocalTime()


Используйте метод, чтобы вернуть время, сохраненное объектом SimpleDateTime, в часовом поясе текущего пользователя.

Возвращаемое значение:

ТипОписание
SimpleDateTime objectМетод возвращает время в часовом поясе пользователя.

Пример:

getLocalTime()
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Метод возвращает название месяца.

Пример:

getMonthLocalTime()
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(startDateTime.getMonthLocalTime());
// Информация: Январь

getMonthUTC()


Используйте метод, чтобы вернуть значение месяца, сохраненное объектом SimpleDateTime, в часовом поясе UTC.

Возвращаемое значение:

ТипОписание
StringМетод возвращает название месяца.

Пример:

getMonthUTC()
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(startDateTime.getMonthUTC());
// Информация: Декабрь

getNumericValue()


Используйте метод, чтобы вернуть временную метку Unix, в которой хранится количество секунд с 1 января 1970, 00:00:00.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает значение временной метки Unix.

Пример:

getNumericValue()
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getNumericValue());
//Информация: 1546329600

getTime()


Используйте метод, чтобы вернуть объект SimpleTime, который показывает значение времени объекта SimpleDateTime.

Возвращаемое значение:

ТипОписание
SimpleDateTime objectМетод возвращает время в часовом поясе UTC.

Пример:

getTime()
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
const time = startDateTime.getTime();
ss.info(time.getByFormat('h:i:s'));
//Информация: 11:01:00

getValue()


Используйте метод, чтобы вернуть значение даты и времени в часовом поясе UTC.

Возвращаемое значение:

ТипОписание
StringМетод возвращает значение даты и времени во внутреннем формате. Если введенное значение даты не валидно, метод возвращает null.

Пример:

getValue()
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getValue()); // 2019-01-01 08:00:00

getWeekOfYearLocalTime()


Используйте метод, чтобы вернуть порядковый номер недели, сохраненный объектом SimpleDateTime в часовом поясе текущего пользователя.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает номер текущей недели.

Пример:

getWeekOfYearLocalTime()
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(startDateTime.getWeekOfYearLocalTime());
//Информация: 1

getWeekOfYearUTC()


Используйте метод, чтобы вернуть номер недели, сохраненный объектом SimpleDateTime в часовом поясе UTC.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает номер текущей недели.

Пример:

getWeekOfYearUTC()
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(startDateTime.getWeekOfYearUTC());
//Информация: 1

getYearLocalTime()


Используйте метод, чтобы вернуть значение года, сохраненное объектом SimpleDateTime в часовом поясе текущего пользователя.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает четырехзначное значение года.

Пример:

getYearLocalTime()
const holidayDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(holidayDateTime.getYearLocalTime());
//Информация: 2020

getYearUTC()


Используйте метод, чтобы вернуть значение года, сохраненное объектом SimpleDateTime в часовом поясе UTC.

Возвращаемое значение:

ТипОписание
IntegerМетод возвращает четырехзначное значение года.

Пример:

getYearUTC()
const holidayDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(holidayDateTime.getYearUTC());
//Информация: 2019

isValid()


Используйте этот метод, чтобы определить, является ли допустимым указанное значение даты и времени.

Возвращаемое значение:

ТипОписание
BooleanМетод возвращает true, если значение даты и времени допустимо; если нет, то метод возвращает false.

Пример:

isValid()
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 и внутреннем формате ГГГГ-ММ-ДД чч:мм:сс.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
dateTimeStringДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

setValue()
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.

Параметры:

НаименованиеТипОбязательноЗначение по умолчанию
firstSimpleDateTime object/IntegerДаНет
secondSimpleDateTime objectНетnull

Возвращаемое значение:

ТипОписание
SimpleDuration objectМетод возвращает объект SimpleDuration, если в метод переданы оба параметра. В остальных случаях метод возвращает null.

Пример 1:

subtract()
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:

without 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:

subtract()
const datetime = new SimpleDateTime('2020-08-28 09:00:00');
datetime.subtract(3600);
ss.info(datetime.getValue());
//Информация: 2020-08-28 08:00:00

Тот же пример без использования метода subtract:

without subtract()
const datetime = new SimpleDateTime('2020-08-28 09:00:00');
datetime.addSeconds(-3600);
ss.info(datetime.getValue());
//Информация: 2020-08-28 08:00:00