Если месяц неизвестен, то обычным способом программно установить его на середину года - на июль. Я знаю эту проблему в Индии - некоторые люди иногда не знают дату своего рождения.
Например, как следует:
var month = "UNK"; // TODO: here is your code to get the month name from field
month = month == "UNK" ? "JUL" : month;
var birthDate = new Date("12 " + month + " 1995");
var now = new Date();
var age = now.getFullYear() - birthDate.getFullYear();
document.write("Your Age is: " + age);
Но учтите, что ваши расчеты не совсем верны, потому что вы не рассчитываете с полной датой (день, месяц, год, час, минуты).
Мое предложение
Но я хотел бы предложить использовать новый тип поля ввода HTML5 date
(см. Эту ссылку), который выглядит следующим образом (наведите указатель мыши на это поле) :
<input name="birthdate" type="date" required>
И все пользователи должны поставить эту дату под свою ответственность. В этом случае они должны выбрать одну дату, и у вас не будет ответственности за это.