Чтобы не оперировать аргументами как объектами, перепишите функцию форматирования даты так:
function formatDate(date, opt = 'full') {
var format = {
full: {weekday: "long", day: "numeric", month: "long", year: "numeric"},
brief: {day: "numeric", month: "long", year: "numeric"},
day: {weekday: "long"}
};
return date.toLocaleDateString("ru", format[opt] || format.full).replace(/^.?|,/g, function(v, i) {
return !i ? v.toUpperCase() : '<br>'
});
}
А далее вызывайте ее с параметром нужным когда это требуется (когда это нужно, вам виднее):
<p id="full"></p>
<p id="brief"></p>
<p id="day"></p>
<script>
function formatDate(date, opt = 'full') {
var format = {
full: {weekday: "long", day: "numeric", month: "long", year: "numeric"},
brief: {day: "numeric", month: "long", year: "numeric"},
day: {weekday: "long"}
};
return date.toLocaleDateString("ru", format[opt] || format.full).replace(/^.?|,/g, function(v, i) {
return !i ? v.toUpperCase() : '<br>'
});
}
//какая-то полученная дата, здесь, в примере, это текущая
var dt = new Date();
//нужно получить полное представление этой даты, получаем
document.getElementById("full").innerHTML = formatDate(dt);
//нужно получить краткое представление этой даты, получаем
document.getElementById("brief").innerHTML = formatDate(dt, 'brief');
//нужно получить только день недели этой даты, получаем
document.getElementById("day").innerHTML = formatDate(dt, 'day');
</script>