Преобразование даты с использованием UDF в cosmos db

#javascript #date #user-defined-functions #date-conversion

#javascript #Дата #определяемые пользователем функции #преобразование даты

Вопрос:

моя дата находится в виде строки и выглядит следующим образом 13 июля 2020 как я могу преобразовать ее в формат даты cosmos db «2020-10-07T00:00: 00.000Z», используя определяемую пользователем функцию или javascript

Комментарии:

1. Пожалуйста, проведите некоторое исследование. Существует множество связанных вопросов по StackOverflow.

Ответ №1:

Вы можете использовать String.split(), чтобы разделить дату на составные части, затем использовать Date.UTC для преобразования во время unix. ПРИМЕЧАНИЕ: Я предполагаю, что ваша дата 13 июля 2020 года соответствует UTC. Если это по местному времени, мы бы использовали вместо него новую дату (год, месяц, день).

 // Use this if your date string refers to UTC time
function parseUTCTimestamp(s) {
    const monthIndexes = { 
        jan:0, feb:1, mar:2, apr:3, may:4, jun:5,
        jul:6, aug:7, sep:8, oct:9, nov:10, dec:11 
    };
    const [day, month, year] = s.toLowerCase().split('-');
    return new Date(Date.UTC(year, monthIndexes[month], day)).toISOString();
}

console.log("UTC:", parseUTCTimestamp("13-Jul-2020"));
console.log("UTC:", parseUTCTimestamp("17-aug-2020"));

// Use this if your date string refers to local time
function parseLocalTimestamp(s) {
    const monthIndexes = { 
        jan:0, feb:1, mar:2, apr:3, may:4, jun:5,
        jul:6, aug:7, sep:8, oct:9, nov:10, dec:11 
    };
    const [day, month, year] = s.toLowerCase().split('-');
    return new Date(year, monthIndexes[month], day).toISOString();
}

console.log("Local:", parseLocalTimestamp("13-Jul-2020"));
console.log("Local:", parseLocalTimestamp("17-aug-2020"));