Добрый день. Пишу программу, которая выполняет одну простую функцию - показывает сколько времени нужно будет копить деньги, что-бы накопить определённую сумму. Хочу подправить один момент.
Сейчас результат программы выдаётся в следующем виде (например) - "Уйдёт времени: 28 месяцев". А мне нужно, что-бы результат был в таком виде - "Уйдёт 2 года 4 месяца".
Вопрос: как сделать так, что-бы начиная с 12 месяцев в дату начал добавляться год?
<div class="my-wallet-wrap">
<form action="#" method="post" class="form-wallet">
<label class="income-wrap">
<span class="income">Доход в месяц</span>
<input id="must-write" type="number" step="100" min="1000" name="income" placeholder="Введите сумму" class="income-field" required>
</label>
<label class="expense-wrap">
<span class="expense">Расход в месяц</span>
<input id="must-write" type="number" step="100" name="expense" placeholder="Введите сумму" class="expense-field" required>
</label>
<label class="wishful-amount-wrap">
<span class="wishful-amount">Желаемая сумма</span>
<input id="must-write" type="number" step="100" name="amount" placeholder="Введите сумму" class="wishful-amount-field" required>
</label>
<div class="buttons-wrap">
<button type="button" class="calculation-button">Посчитать</button>
<button type="reset" class="reset-button">Очистить</button>
</div>
</form>
<div class="how-long">
<h2 class="how-long-title">Уйдёт времени:</h2>
<p class="how-long-answer"></p>
</div>
</div>
'use strict';
let income = document.querySelector('.income-field');
let expense = document.querySelector('.expense-field');
let amount = document.querySelector('.wishful-amount-field');
let result = document.querySelector('.how-long-answer');
let buttonCalc = document.querySelector('.calculation-button');
let buttonReset = document.querySelector('.reset-button');
let buttonDisabled = document.querySelector('.disabled-button');
let getDisable = function () {
buttonCalc.disabled = true;
buttonCalc.classList.add('disabled-button');
}
getDisable();
let getEnable = function () {
buttonCalc.disabled = false;
buttonCalc.classList.remove('disabled-button');
}
income.addEventListener('input', function (event) {
if (Number(income.value) <= Number(expense.value) || Number(amount.value) < (Number(income.value) - Number(expense.value)) || Number(expense.value) >= Number(income.value) || income.value == '' || expense.value == '' || amount.value == '') {
getDisable();
} else {
getEnable();
}
});
expense.addEventListener('input', function (event) {
if (Number(expense.value) >= Number(income.value) || Number(income.value) <= Number(expense.value) || Number(amount.value) < (Number(income.value) - Number(expense.value)) || expense.value == '' || income.value == '' || amount.value == '') {
getDisable();
} else {
getEnable();
}
});
amount.addEventListener('input', function (event) {
if (Number(amount.value) < (Number(income.value) - Number(expense.value)) || Number(income.value) <= Number(expense.value) || Number(expense.value) >= Number(income.value) || amount.value == '' || expense.value == '' || income.value == '') {
getDisable();
} else {
getEnable();
}
});
let getResult = function () {
let balance = income.value - expense.value;
let resultFirst = amount.value / balance;
return resultFirst;
}
buttonCalc.addEventListener('click', function (event) {
const ending = [' Месяц',' Месяцев', ' Месяца'];
let sampleNumber = Math.round(getResult()),
lastDigit = sampleNumber % 10;
if (lastDigit === 1) {
result.textContent = Math.round(getResult()) + ending[0];
} else if (lastDigit === 2 || lastDigit === 3 || lastDigit === 4) {
result.textContent = Math.round(getResult()) + ending[2];
} else {
result.textContent = Math.round(getResult()) + ending[1];
}
});
buttonReset.addEventListener('click', function (event) {
result.textContent = '';
});