dazle
@dazle
Хороший электрик, но в душе программист

Не работает склонение слова если оно находится с другим скриптом почему?

У меня выводит кол-во дней работы сайта и мне нужно склонять слово 'дней' в зависимости от цифры. Отдельно файл склонения работает, а вот вместе со скриптом "дней работы сайта" нет. Выдает: сайту 1 дней, посмотрите может что с разметкой на любую цифру выдает "дней".
d0 = new Date('May 28, 2019'); // пуск сайта
d1 = new Date();
dt = (d1.getTime() - d0.getTime()) / (1000*60*60*24);


function getNoun(number, one, two, five) {
    let n = Math.abs(number);
    n %= 100;
 if (n >= 5 && n <= 20) {
      return five;
    }
    n %= 10;
    if (n === 1) {
      return one;
    }
    if (n >= 2 && n <= 4) {
      return two;
    }
    return five;
}
 

document.write('<p114>cайту' + Math.round(dt) + '</p114>');
  
document.write( '' + getNoun(' + Math.round(dt) + ', '<p115>день</p115>', '<p115>дня</p115>', '<p115>дней</p115>'));
  • Вопрос задан
  • 78 просмотров
Решения вопроса 1
Chefranov
@Chefranov
Новичок
d0 = new Date('May 28, 2019'); // пуск сайта
d1 = new Date();
dt = Math.round((d1.getTime() - d0.getTime()) / (1000*60*60*24));

function declOfNum(number, titles) {  
    cases = [2, 0, 1, 1, 1, 2];  
    return titles[ (number%100>4 && number%100<20)? 2 : cases[(number%10<5)?number%10:5] ];  
}

document.write(dt + ' ' + declOfNum(dt, ['день', 'дня', 'дней']));
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы