Нет выхода при запуске функции в терминале - PullRequest
0 голосов
/ 06 февраля 2019

Пожалуйста, помогите с моим кодом.Когда я запускаю его на моем терминале, нет вывода.Я пытаюсь напечатать день dateString, которую я передаю в функцию.Например, если я передам сегодняшнюю дату, которая является 02/05/2019, она должна напечатать вторник.

Я попытался вызвать функцию в отдельной строке и использовать console.log для ее печати, возможно, этоработал, но это не так.

var dateString = ('10/16/2012');
const getDayName = (date) =>   {
  var days =  new Date(dateString);
  const weekDays = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saurday'];
  return weekDays[days.getDay()];
};

console.log(getDayName);

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Функция может быть уменьшена до:

function getDayName(s) {
  return ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'][new Date(s).getDay()];
}

console.log(getDayName('10/16/2012'));

Или, если вам действительно нужно использовать выражение функции:

let getDayName = s => ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'][new Date(s).getDay()];

console.log(getDayName('10/16/2012'));

Меньше кода и поддержка основного языка по умолчанию:

let getDayName = s => new Date(s).toLocaleString(void 0, {weekday:'long'});

console.log(getDayName('10/16/2012'));
0 голосов
/ 06 февраля 2019

В вашем коде несколько ошибок / несоответствий.

  • Вы регистрируете саму функцию, а не вызываете ее.
  • Вы не используете аргумент даты в своей функции, вы напрямую обращаетесь к глобальной переменной.

Вот исправленная версия:

const getDayName = dateString => {
  const date = new Date(dateString);
  const weekDays = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saurday'];
  return weekDays[date.getDay()];
};

console.log(getDayName('10/16/2012'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...