Вроде бы объект Date все это сам умеет делать.
Между тем решение давно существует. Вы просто пишите нормальным текстом чего хотите, программа его распознает и все считает. Вам остается только вписать в валуе кнопок тот самый текст. Например на пхп вот такая функция есть
http://php.net/manual/en/function.strtotime.php - но для русского языка ее надо отдельно локализовать. То есть вам надо такую же на js.