Ребята, вы можете поверить, что уже почти пятница?? Я с нетерпением жду выходных, особенно потому, что я могу посмотреть футбол! В некоторых других новостях премьер-лига заявила, что готова возобновить игру 17 июня. Приятно видеть, что некоторые вещи возвращаются к норме. В любом случае, для сегодняшней проблемы с алгоритмом я должен вернуть день недели для введенного года, месяца и дня. Вот пример:

Input: day = 31, month = 8, year = 2019
Output: "Saturday"
Input: day = 18, month = 7, year = 1999
Output: "Sunday"
Input: day = 15, month = 8, year = 1993
Output: "Sunday"

Итак, я начал с создания некоторых условий для месяца, потому что я думал, что каждый второй месяц длится 31 день, но я дважды проверил, и оказалось, что июль, и август оба имеют длину 31 день, так что очевидно, что этот подход не мог Работа. Я начал выяснять, есть ли в JavaScript какой-то встроенный способ узнать день недели, и наткнулся на возможное решение, в котором я могу использовать класс Date и в значительной степени получить день недели после вызова метода этого класс, прикольно. Вот как это выглядит в коде:

var dayOfTheWeek = function(day, month, year) {
    let date =new Date(year+"."+month+"."+day);
    let n = date.getDay();
    let dayMap={
        0:"Sunday",
        1:"Monday",
        2:"Tuesday",
        3:"Wednesday",
        4:"Thursday",
        5:"Friday",
        6:"Saturday"
    }
    return dayMap[n];
};

Я также добавил хеш-таблицу, потому что метод .getDay() возвращает целое число от 0 до 6.

В итоге получилось довольно просто и понятно. В любом случае, если вы, ребята, узнали что-то интересное или думаете, что решение довольно крутое, нажмите кнопку аплодисментов! Если у вас есть лучшие способы решить эту проблему, не стесняйтесь оставить ответ или связаться со мной, спасибо!